情景模擬:
A頁面中,有一些div是根據A中的book數據通過v-for生成的,比如item。
并且點擊會根據路由跳轉到B頁面。
而跳轉到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()函數中,再根據路由傳入
toOther(to,run) { if(this.$route.path!==`/${to}`){ location.hash = to+'?'+run.key; } },即將要傳的參數添加在原本url加?之后,這樣既不影響路由,也比較方便。
如圖1所示:


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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。
新聞熱點
疑難解答