最近在做項目號的時候碰到一個問題牍疏,就是我在用vue的query傳多個參數(shù),其中有一個參數(shù)是一個數(shù)組的時候。
我是這么操作的:
在給一個標(biāo)簽綁定點擊事件:
function fn(a1, a2, a3){
this.$Router.push({
path: "/pages/hcp360/index",
query: {
eid: a1,
docta: a2,
tabList:encodeURIComponent(JSON.stringify(a3))
},
});
}
從上述代碼中可以看出担敌,這個tabList就是我索要傳的數(shù)組
而當(dāng)我在那邊接受參數(shù)時:
created(){
let a3 = this.$Route.query.a3
this.a3 = JSON.parse(decodeURIComponent(a3)) //這里報錯了一直拿不到值
}
然后我刷新頁面 之后就能拿到了,并且url也發(fā)生了變化辞槐,再刷新幾次也沒什么變化了
我仔細觀察了一下掷漱,發(fā)現(xiàn)這個a3變了,之前他的每個參數(shù)連接是這樣a3=%2522name%2575age%...(記不起來了榄檬,仿寫的一個)
刷新后變成了這樣a3=%22name%75age%...
這是我發(fā)現(xiàn)的一個說明白了的博主的鏈接:
https://blog.csdn.net/weixin_45609589/article/details/130431197
也就是說我在傳參的過程中又被加了一encodeURIComponent卜范,明白了問題所在。想必就知道該怎么解決了吧
created(){
let a3 = this.$Route.query.a3
this.a3 = JSON.parse(decodeURIComponentde(codeURIComponent(a3)))
}
以上就是url的參數(shù)進行encodeURIComponent的編碼問題的方法了
如果這篇文章對你有幫助鹿榜,或者在進行中遇到其他問題海雪,歡迎評論區(qū)留言出來。
我們一起探討~