詳解Vue中一種簡易路由傳參辦法
情景模擬:
A頁面中,有一些div是根據(jù)A中的book數(shù)據(jù)通過v-for生成的,比如item。
并且點擊會根據(jù)路由跳轉(zhuǎn)到B頁面。
而跳轉(zhuǎn)到B頁面后,我需要A中的item。
<div v-for="(item,index) in book" :class='{on:$route.path === `/${item.to}/`}' @click='toOther(item.to)'>
</div>
toOther(to,run) {
if(this.$route.path!==`/${to}`){
location.hash = to;
}
},
解決辦法:
在A中的click事件中將item傳進toOther()函數(shù)中,再根據(jù)路由傳入
toOther(to,run) {
if(this.$route.path!==`/${to}`){
location.hash = to+'?'+run.key;
}
},
即將要傳的參數(shù)添加在原本url加?之后,這樣既不影響路由,也比較方便。
如圖1所示:


如圖2,這樣子我們便可以在 this.$route 的fullPath中拿到A中我們需要傳遞的參數(shù)了。
具體要拿還需要進行字符串的分割取出所需的信息,但是這樣子會很繁瑣,我們只需多加幾個字,
在你的參數(shù)前加上'sth'=
toOther(to,run) {
if(this.$route.path!==`/${to}`){
location.hash = to+'?'+'book_key='+run.key;
}
},
你就會發(fā)現(xiàn)你可以在query中拿到這些個數(shù)據(jù)
并且是一個object的形式
簡直不能更完美!

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
在 Vue 3 中上傳 KML 文件并在地圖上顯示的實現(xiàn)方法
KML 文件作為一種標準的地理數(shù)據(jù)格式,廣泛應(yīng)用于地理信息系統(tǒng)(GIS)中,通過 OpenLayers 和 Vue 3 的組合,您可以方便地實現(xiàn)地圖數(shù)據(jù)的可視化和交互,本文介紹在 Vue 3 中上傳 KML 文件并在地圖上顯示的實現(xiàn)方法,感興趣的朋友一起看看吧2024-12-12
前端利用vue實現(xiàn)導(dǎo)入和導(dǎo)出功能詳細代碼
最近項目中讓實現(xiàn)一個導(dǎo)入導(dǎo)出Excel的功能,下面這篇文章主要給大家介紹了關(guān)于前端利用vue實現(xiàn)導(dǎo)入和導(dǎo)出功能的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-09-09

