angular.js - angularjs url 傳一個對象
問題描述
以前傳參數都是多個的key:value的形式。現在的需求是將整個對象傳過去,像下面這樣然后我的寫法是
/*前往訂單詳情頁面*/$scope.goOrderDetails=function(){//counArr就是圖片里的對象 $state.go(’ticket.pay’,{countArr:countArr})}
在接收頁面
var countArr=$stateParams.countArr;console.log(countArr);console.log(countArr.length);
結果不對了,console.log(countArr)的結果是[object object],url也變成了127.0.0.1:9002/ticket/pay/%5Bobject%20Object%5D我想知道是哪里的問題,之前沒遇到過傳一個對象的需求
問題解答
回答1:要這樣傳的話,得
$state.go(’ticket.pay’,{countArr: JSON.stringify(countArr)})
取的時候
var countArr = JSON.parse($stateParams.countArr)
直接傳對象的話,建議用瀏覽器存儲來傳,參考這個
回答2:是不是要先轉成json呢,
回答3:路由中設置 params.state(’urlname’,{
url:’urlname’,templateUrl:...,controller:...,params:{testObj:''}
})
這樣頁面中取出來的的testObj還是對象的,直接用你需要的屬性就好了
補充...這個params里當然也可以是testObj:{}
相關文章:
1. css - 如何把一個視圖放在左浮動定位的視圖的上面?2. python的正則怎么同時匹配兩個不同結果?3. php多任務倒計時求助4. javascript - axios請求回來的數據組件無法進行綁定渲染5. javascript - vue中怎么使用原生js插件6. MySQL的聯合查詢[union]有什么實際的用處7. javascript - jquery怎么讓a標簽跳轉后保持tab的樣式8. css - 子元素跑到父元素外面9. javascript - 小demo:請教怎么做出類似于水滴不斷擴張的效果?10. javascript - 請問下面代碼中的...是擴展運算符還是操作運算符?這樣寫是什么意思?
