亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

vue-router(this.$router)如何在新窗口打開路由跳轉(zhuǎn)頁面

 更新時(shí)間:2023年12月04日 14:58:06   作者:『減減』  
這篇文章主要介紹了vue-router(this.$router)如何在新窗口打開路由跳轉(zhuǎn)頁面問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

vue-router(this.$router)在新窗口打開路由跳轉(zhuǎn)頁面

使用標(biāo)簽實(shí)現(xiàn)新窗口打開

在頁面導(dǎo)航中被渲染為標(biāo)簽, 在vue2版本的支持 target=“_blank”

代碼如下:

<router-link target="_blank" :to="{path:'/note'}">新窗口打開</router-link>

編程式導(dǎo)航

有些時(shí)候需要在單頁面中實(shí)現(xiàn)頁面跳轉(zhuǎn),那么可以借助router的示例方法,通過編寫代碼實(shí)現(xiàn)。

我們常用的是$router.push 和$ router.go 但是vue2.0以后,這種方式就不支持新窗口打開的屬性了,這個(gè)時(shí)候就需要使用this.$router.resolve, 傳參時(shí)可以使用query,也可以使用params

代碼如下:

    const routeUrl = this.$router.resolve({
      path: '/路徑',
      query: { id }
    })
    window.open(routeUrl.href, '_blank')

vue報(bào)錯(cuò)之this.$router is undefine

最近寫項(xiàng)目遇到這個(gè)報(bào)錯(cuò),特此記錄一下

 axios.get('/person/ticket')
 .then(response => {
    
       this.$router.push('/ground')
           
 })

原因很簡(jiǎn)單,因?yàn)槲沂褂玫氖羌^函數(shù),改變了this指向,所以vue在這里找不到$router,從而報(bào)錯(cuò)

解決很簡(jiǎn)單

保留this即可

 const that = this;
 axios.get('/person/ticket')
 .then(response => {
    
       that.$router.push('/ground')
           
 })

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論