angular.js - angularjs url 傳一個(gè)對(duì)象
問題描述
以前傳參數(shù)都是多個(gè)的key:value的形式。現(xiàn)在的需求是將整個(gè)對(duì)象傳過去,像下面這樣然后我的寫法是
/*前往訂單詳情頁面*/$scope.goOrderDetails=function(){//counArr就是圖片里的對(duì)象 $state.go(’ticket.pay’,{countArr:countArr})}
在接收頁面
var countArr=$stateParams.countArr;console.log(countArr);console.log(countArr.length);
結(jié)果不對(duì)了,console.log(countArr)的結(jié)果是[object object],url也變成了127.0.0.1:9002/ticket/pay/%5Bobject%20Object%5D我想知道是哪里的問題,之前沒遇到過傳一個(gè)對(duì)象的需求
問題解答
回答1:要這樣傳的話,得
$state.go(’ticket.pay’,{countArr: JSON.stringify(countArr)})
取的時(shí)候
var countArr = JSON.parse($stateParams.countArr)
直接傳對(duì)象的話,建議用瀏覽器存儲(chǔ)來傳,參考這個(gè)
回答2:是不是要先轉(zhuǎn)成json呢,
回答3:路由中設(shè)置 params.state(’urlname’,{
url:’urlname’,templateUrl:...,controller:...,params:{testObj:''}
})
這樣頁面中取出來的的testObj還是對(duì)象的,直接用你需要的屬性就好了
補(bǔ)充...這個(gè)params里當(dāng)然也可以是testObj:{}
相關(guān)文章:
1. javascript - 求助關(guān)于call和apply的問題,反柯里化2. android - 求 360瀏覽器 百度瀏覽器 搜狗瀏覽器的最新啟動(dòng)類名3. css3 隱藏文本4. java - .jsp頁面用<%= %>的方式獲取數(shù)據(jù)存在一個(gè)很奇怪的問題5. vue.js - vue上傳代碼到git6. java - svn導(dǎo)下來的項(xiàng)目,web-inf下怎么沒有l(wèi)ib文件呀?7. css - 移動(dòng)端字體適配問題8. javascript - arguments.callee9. css3-translate3d-模糊bug - 為何使用了 css3 translate3d 會(huì)導(dǎo)致顯示模糊?10. javascript - Angular利用 broadcast和 on實(shí)現(xiàn)頁面跳轉(zhuǎn)并且傳遞數(shù)據(jù) 但是跳轉(zhuǎn)后收不到數(shù)據(jù)
