vue-router(this.$router)如何在新窗口打開路由跳轉(zhuǎn)頁面
vue-router(this.$router)在新窗口打開路由跳轉(zhuǎn)頁面
使用標(biāo)簽實現(xiàn)新窗口打開
在頁面導(dǎo)航中被渲染為標(biāo)簽, 在vue2版本的支持 target=“_blank”
代碼如下:
<router-link target="_blank" :to="{path:'/note'}">新窗口打開</router-link>
編程式導(dǎo)航
有些時候需要在單頁面中實現(xiàn)頁面跳轉(zhuǎn),那么可以借助router的示例方法,通過編寫代碼實現(xiàn)。
我們常用的是$router.push 和$ router.go 但是vue2.0以后,這種方式就不支持新窗口打開的屬性了,這個時候就需要使用this.$router.resolve, 傳參時可以使用query,也可以使用params
代碼如下:
const routeUrl = this.$router.resolve({ path: '/路徑', query: { id } }) window.open(routeUrl.href, '_blank')
vue報錯之this.$router is undefine
最近寫項目遇到這個報錯,特此記錄一下
axios.get('/person/ticket') .then(response => { this.$router.push('/ground') })
原因很簡單,因為我使用的是箭頭函數(shù),改變了this指向,所以vue在這里找不到$router,從而報錯
解決很簡單
保留this即可
const that = this; axios.get('/person/ticket') .then(response => { that.$router.push('/ground') })
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue實現(xiàn)hash模式網(wǎng)址方式(就是那種帶#的網(wǎng)址、井號url)
這篇文章主要介紹了Vue實現(xiàn)hash模式網(wǎng)址方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07vue+el-table點擊表頭實現(xiàn)改變其當(dāng)前樣式
這篇文章主要介紹了vue+el-table點擊表頭實現(xiàn)改變其當(dāng)前樣式問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-08-08uniapp前端實現(xiàn)微信支付功能全過程(小程序、公眾號H5、app)
這篇文章主要介紹了uniapp前端實現(xiàn)微信支付功能的相關(guān)資料,通過uniapp開發(fā)跨平臺應(yīng)用時,需要處理不同平臺的支付方式,包括微信小程序支付、公眾號H5支付和App支付,需要的朋友可以參考下2024-09-09vue2結(jié)合element-ui的gantt圖實現(xiàn)可拖拽甘特圖
因為工作中要用到甘特圖,所以我在網(wǎng)上搜索可以用的甘特圖,搜索了好多,但是網(wǎng)上搜到大多數(shù)都很雞肋,不能直接使用,下面這篇文章主要給大家介紹了關(guān)于vue2結(jié)合element-ui的gantt圖實現(xiàn)可拖拽甘特圖的相關(guān)資料,需要的朋友可以參考下2022-11-11解決antd 下拉框 input [defaultValue] 的值的問題
這篇文章主要介紹了解決antd 下拉框 input [defaultValue] 的值的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10解決vant的Toast組件時提示not defined的問題
這篇文章主要介紹了解決vant的Toast組件時提示not defined的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11