Vue 路由間跳轉和新開窗口的方式(query、params)
路由間跳轉配置:
query 方式
參數會在url中顯示
this.$router.push({
// query方式
path: "/a",
query: {
projectDetails: val
},
params 方式
傳參數據不會在導航欄中顯示,需要配合路由的name屬性使用
// params 方式
name: 'a',
params: {
projectDetails: val
}
新開頁面
需要使用resolve配置
const {href} = this.$router.resolve({
path: '/a',
query: {
code: '123',
}
})
window.open(href, '_blank')
這里需要注意一下,使用params進行傳參,在新頁面內使用this.$route.params對象為{},參數無法傳過來,query是可以正常傳參。
我想這個應該跟我們正常打開一個鏈接是一樣的,因為router-link的tag='a',應該是個超鏈接。
這個只是我的個人想法,歡迎指正。
如果遇到這種情況,不想參數在url上顯示且必須要傳的話,可以借用瀏覽器的緩存來實現(xiàn)。
在父頁面寫入緩存,在子頁面從緩存中讀取,讀取之后再刪除。
總結
以上所述是小編給大家介紹的Vue 路由間跳轉和新開窗口的方式(query、params),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

