国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Vue路由跳轉(zhuǎn)的五種方式

這篇具有很好參考價(jià)值的文章主要介紹了Vue路由跳轉(zhuǎn)的五種方式。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

Vue路由跳轉(zhuǎn)的五種方式

vue路由跳轉(zhuǎn)方式,前端框架知識(shí),前端知識(shí),vue.js,javascript,前端

路由跳轉(zhuǎn)有兩種形式:聲明式導(dǎo)航、編程式導(dǎo)航

1. router-link

  1. 聲明式
  2. prop=> :to=“…”
  3. 相當(dāng)與 router.push(…)

router-link中鏈接如果是’ / '開(kāi)始,就是從根路由開(kāi)始
如果開(kāi)始不帶 ’ / ',則是從當(dāng)前路由開(kāi)始
例子

<template>
  <div>
    router-link 第一種方式
    <router-link :to="{name:'home'}">  
    <router-link :to="{path:'/home'}"> 
    name,path都行, 建議用name 
     <router-link :to"{
              name:'page1',
              query:{key:'我是傳遞的參數(shù)'}
    }">
    傳遞參數(shù)
    </router-link>
  </div>
</template>

2. this.$router.push()

  1. 可追溯
  2. 編程式
  3. router.push(…)//該方法的參數(shù)可以是一個(gè)字符串路徑,或者一個(gè)描述地址的對(duì)象。
  4. 會(huì)向history棧添加新紀(jì)錄
  5. 方式
    • name
      • route-name
      • params
      //params傳參
      1.路由配置:
       name: 'home',
       path: '/home/:id'(或者path: '/home:id')
       2.跳轉(zhuǎn):
       this.$router.push({name:'home',params: {id:'1'}})
       注意:
       // 只能用 name匹配路由不能用path
       // params傳參數(shù)(類似post)  路由配置 path: "/home/:id" 或者 path: "/home:id"否則刷新參數(shù)消失
      
    • path
      • router-path
      • query
      //不帶參數(shù)
       this.$router.push('/home')
       this.$router.push({name:'home'})
       this.$router.push({path:'/home'})
      //query傳參
      1.路由配置:
       name: 'home',
       path: '/home'
       2.跳轉(zhuǎn):
       this.$router.push({name:'home',query: {id:'1'}})
       this.$router.push({path:'/home',query: {id:'1'}})
       3.獲取參數(shù)
       html取參: $route.query.id
       script取參: this.$route.query.id
      
      //直接通過(guò)path傳參
      1.路由配置:
      name: 'home',
      path: '/home/:id'
      2.跳轉(zhuǎn):
      this.$router.push({path:'/home/123'}) 
      或者:
      this.$router.push('/home/123') 
      3.獲取參數(shù):
      this.$route.params.id
      

例子

<template>
  <div>
    <vant-button @click='gotoFn1' type="defaullt">
      push第二種方式
    <van-button>
  </div>
</template>

export default{
  name:'page',
  data(){
  
  },
  methods:{
   gotoFn1(){
      this.$router.push({
        path:'/page',
        query:{key:'我是傳遞的參數(shù)'}
      })
      //push第二種路由跳轉(zhuǎn)方法
    }
  }
  
}

3. this.$router.replace() (用法同push)

  1. 不可追溯
  2. 它不會(huì)向history添加新紀(jì)錄
  3. 方式
    • name
      • route-name
      • params
        • 例如
            this.$route.push({
                name:' Home',//路由的名稱
                params:{
                    site:[],
                    bu:[]
                  }
              })
        
        • 解釋
        params:/router1/:site/:bu
        //這里的site、bu叫做params
        
    • path
      • router-path
      • query
        • 例如
        this.$router.push({
           path:'/home',
           query:{
            site:[],
            bu:[]
            }
        })
        
        -解釋
        query:/router1?id=123
        這里的id叫做query
        

例子

<template>
  <div>
    <vant-button @click='gotoFn2' type="defaullt">
      replace第三種方式
    <van-button>
  </div>
</template>

export default{
  name:'page',
  data(){
  
  },
  methods:{
   gotoFn1(){
      this.$router.replace({
        path:'/page',
        query:{key:'我是傳遞的參數(shù)'}
      })
      //replace第三種路由跳轉(zhuǎn)方法
    }
  }
  
}

4. this.$router.go(n)

  1. 相當(dāng)于當(dāng)前頁(yè)面向前或向后跳轉(zhuǎn)多少個(gè)頁(yè)面,類似window.history.go(n)m可以為正數(shù)可為負(fù)數(shù)
  2. $router.go(-1)

例子

<template>
  <div>
    <vant-button @click='goBack' type="defaullt">
      第四種方式
    <van-button>
  </div>
</template>

export default{
  name:'page',
  data(){
  
  },
  methods:{
   goBack(){
      this.$router.go(-1)
       //go第四種路由跳轉(zhuǎn)方法
    }
  }
  
}

5. location

  1. Location對(duì)象包含有關(guān)當(dāng)前URL的信息
  2. href
    • 設(shè)置或返回完整的URL。
    • readable可讀
      const url=location.href
      
    • writeable
     location.href='https://www.baidu.com'
    
  3. 刷新頁(yè)面

可以用 window.location來(lái)訪問(wèn)


擴(kuò)展

vue路由跳轉(zhuǎn)方式,前端框架知識(shí),前端知識(shí),vue.js,javascript,前端

this.$ router.push()和 this.$ router.replace()的區(qū)別

this.$router.push()跳轉(zhuǎn)到指定url路徑,并向history棧中添加一個(gè)記錄,點(diǎn)擊后退會(huì)返回上一個(gè)頁(yè)面

this.$ router.replace()跳轉(zhuǎn)到指定url路徑,但是history棧中不會(huì)有記錄,所以點(diǎn)擊返回按鈕時(shí),會(huì)直接用【上一個(gè)頁(yè)面之前的那個(gè)頁(yè)面】來(lái)替換當(dāng)前的頁(yè)面

params和query的區(qū)別

query類似 get,跳轉(zhuǎn)之后頁(yè)面 url后面會(huì)拼接參數(shù),類似?id=1。
非重要性的可以這樣傳,密碼之類還是用params,刷新頁(yè)面id還在。
params類似 post,跳轉(zhuǎn)之后頁(yè)面 url后面不會(huì)拼接參數(shù)。
總結(jié):
1.query可以用name和path匹配路由,通過(guò)this.$route.query.id獲取參數(shù),刷新瀏覽器參數(shù)不會(huì)丟失
2.params只能用name匹配路由,通過(guò)path匹配路由獲取不到參數(shù),對(duì)應(yīng)的路由配置path:‘/home/:id’或者path:‘home:id’,否則刷新瀏覽器參數(shù)丟失
3.直接通過(guò)url傳參,push({path: ‘/home/123’})或者push(’/home/123’),對(duì)應(yīng)的路由配置path:‘/home/:id’,刷新瀏覽器參數(shù)不會(huì)丟失。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-743540.html

到了這里,關(guān)于Vue路由跳轉(zhuǎn)的五種方式的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Vue實(shí)現(xiàn)免密登錄跳轉(zhuǎn)的方式

    需求背景: 最近接到這樣一個(gè)需求,點(diǎn)擊某個(gè)url要跳轉(zhuǎn)到某個(gè)系統(tǒng)的首頁(yè)。 實(shí)現(xiàn)思路: 首先,我們要明確一個(gè)點(diǎn),系統(tǒng)中所有的操作都要攜帶Token去發(fā)送請(qǐng)求,而登錄一般是獲取Token的來(lái)源,點(diǎn)擊url實(shí)現(xiàn)跳轉(zhuǎn),并不意味著,不需要登錄,只是我們?cè)邳c(diǎn)擊url的過(guò)程中,去幫助用

    2024年02月15日
    瀏覽(19)
  • 利用vue-router跳轉(zhuǎn)的幾種方式

    ?1 router-link 2 this.$router.push ? ? 跳轉(zhuǎn)到指定路徑,并將跳轉(zhuǎn)頁(yè)面壓入history棧中,也就是添加了一個(gè)頁(yè)面記錄。 3 this.$router.replace ? ? 跳轉(zhuǎn)到指定路徑,將history棧中的當(dāng)前頁(yè)面替換為跳轉(zhuǎn)到的頁(yè)面。 4 this.$router.go(n) ? ? 在histroy棧中向前或者向后跳轉(zhuǎn)n個(gè)頁(yè)面,n可為正整數(shù)或負(fù)

    2024年02月12日
    瀏覽(26)
  • vue3 route跳轉(zhuǎn)的new tab兩種方式

    Vue有兩種類型的應(yīng)用SPA和MAP,本文主要介紹的是SPA類型下面的使用方法 單頁(yè)面應(yīng)用,即一個(gè)web項(xiàng)目就只有一個(gè)頁(yè)面(即一個(gè)HTML文件) 這種類型通常都需要router來(lái)進(jìn)行頁(yè)面跳轉(zhuǎn). 一開(kāi)始只需要加載一次js、css的相關(guān)資源。所有內(nèi)容都包含在主頁(yè)面,對(duì)每一個(gè)功能模塊組件化。單

    2024年02月09日
    瀏覽(17)
  • 前端刷新頁(yè)面的五種方法(含原生js、vue和react)

    1、window.history.go(0)方法 2、location.reload()方法 3、location.href=location.href方法 4、vue-router方法 5、react-router方法

    2024年02月16日
    瀏覽(25)
  • 【vue3】在setup組合式api中不能使用beforeRouterEnter,監(jiān)聽(tīng)來(lái)源路由和跳轉(zhuǎn)的目標(biāo)路由

    【vue3】在setup組合式api中不能使用beforeRouterEnter,監(jiān)聽(tīng)來(lái)源路由和跳轉(zhuǎn)的目標(biāo)路由

    注意了,在vue3中的setup函數(shù)中是不可以使用beforeRouterEnter這個(gè)路由守衛(wèi)的,請(qǐng)看vue-router的官方文檔 ?導(dǎo)航守衛(wèi) | Vue Router 由此可見(jiàn),在使用組合式api的時(shí)候,只有update和leave守衛(wèi),不符合我們的要求。 使用 script? setup/script這種形式的腳本,無(wú)法監(jiān)聽(tīng)來(lái)源路由 方法一、我們可以

    2024年02月13日
    瀏覽(23)
  • 微前端:qiankun的五種通信方式

    微前端:qiankun的五種通信方式

    今天盤點(diǎn)一下 qiankun 父子應(yīng)用的通信方式都有哪些,我發(fā)現(xiàn)了 5 種。 1、localStorage/sessionStorage 2、通過(guò)路由參數(shù)共享 3、官方提供的 props 4、官方提供的 actions 5、使用vuex或redux管理狀態(tài),通過(guò)shared分享 接下來(lái)我們一個(gè)一個(gè)進(jìn)行說(shuō)明 有人說(shuō)這個(gè)方案必須主應(yīng)用和子應(yīng)用是同一個(gè)

    2024年03月21日
    瀏覽(27)
  • 常見(jiàn)路由跳轉(zhuǎn)的幾種方式

    常見(jiàn)路由跳轉(zhuǎn)的幾種方式

    常見(jiàn)的路由跳轉(zhuǎn)有以下四種: 1. router-link to=\\\"跳轉(zhuǎn)路徑\\\"? 也可,如 2. this.$router.push() 跳轉(zhuǎn)到指定的url,并在history中添加記錄(即,點(diǎn)擊回退,會(huì)退回上一個(gè)頁(yè)面) 。 html中,如: 3. this.$router.replace() 跳轉(zhuǎn)到指定的url, 但不會(huì)在history記錄(即,點(diǎn)擊回退 退回到上上個(gè)頁(yè)) 4

    2024年02月10日
    瀏覽(29)
  • uniapp路由跳轉(zhuǎn)的六種方式

    uniapp路由跳轉(zhuǎn)的六種方式

    uniapp官方文檔詳解: 一、uni.navigateTo保留當(dāng)前頁(yè)面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁(yè)面,使用uni.navigateBack可以返回到原頁(yè)面。 注意: 頁(yè)面跳轉(zhuǎn)路徑有層級(jí)限制,不能無(wú)限制跳轉(zhuǎn)新頁(yè)面 跳轉(zhuǎn)到 tabBar 頁(yè)面只能使用 switchTab 跳轉(zhuǎn) 二、uni.redirectTo關(guān)閉當(dāng)前頁(yè)面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個(gè)頁(yè)面。

    2024年02月11日
    瀏覽(31)
  • 前端傳遞對(duì)象,后臺(tái)接收對(duì)象的五種方式

    前端傳遞對(duì)象,后臺(tái)接收對(duì)象的方式主要有以下幾種: 使用 @RequestBody 注解 :在 Spring Boot 控制器方法中使用 @RequestBody 注解將請(qǐng)求體中的 JSON 數(shù)據(jù)映射為 Java 對(duì)象。 使用 @ModelAttribute 注解 :在 Spring Boot 控制器方法中使用 @ModelAttribute 注解將 URL 參數(shù)或表單數(shù)據(jù)映射為 Java 對(duì)象

    2024年02月06日
    瀏覽(24)
  • 微信小程序中路由跳轉(zhuǎn)的方式有哪些?區(qū)別?

    微信小程序中路由跳轉(zhuǎn)的方式有哪些?區(qū)別?

    微信小程序擁有 web 網(wǎng)頁(yè)和 Application 共同的特征,我們的頁(yè)面都不是孤立存在的,而是通過(guò)和其他頁(yè)面進(jìn)行交互,來(lái)共同完成系統(tǒng)的功能 在微信小程序中,每個(gè)頁(yè)面可以看成是一個(gè) pageModel , pageModel 全部以棧的形式進(jìn)行管理 常見(jiàn)的微信小程序頁(yè)面跳轉(zhuǎn)方式有如下: wx.navig

    2024年02月01日
    瀏覽(21)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包