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

vue進(jìn)階-vue-route中 this.$router 與 this.$route 的區(qū)別

這篇具有很好參考價(jià)值的文章主要介紹了vue進(jìn)階-vue-route中 this.$router 與 this.$route 的區(qū)別。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

通過上章 ??vue進(jìn)階-vue-route 學(xué)習(xí),我們發(fā)現(xiàn)路由的設(shè)置和獲取會(huì)用到 this.$routerthis.$route,容易混淆,本章做下區(qū)分。

this.$router

?this.$router :訪問路由器。是一個(gè)全局的路由器對(duì)象,包含了很多屬性和對(duì)象(比如 history 對(duì)象),任何頁面都可以調(diào)用其 push()、replace()go()方法。

vue獲取路由路徑數(shù)組?

this.$router.options.routes 或者 this.$route.matched

this.$route

?this.$route:當(dāng)前路由對(duì)象。每一個(gè)路由都會(huì)有一個(gè) route 對(duì)象,是一個(gè)局部的對(duì)象,可以獲取對(duì)應(yīng)的 namepath、params、query屬性

區(qū)別

  • ??this.$router 是用來 操作 路由的
  • ??this.$route 是用來 獲取 路由信息的
// Home.vue
export default {
  computed: {
    username() {
      // 我們很快就會(huì)看到 `params` 是什么
      return this.$route.params.username
    },
  },
  methods: {
    goToDashboard() {
      if (isAuthenticated) {
        this.$router.push('/dashboard')
      } else {
        this.$router.push('/login')
      }
    },
  },
}

??注: 要在 setup 函數(shù)中訪問路由,請(qǐng)調(diào)用 useRouteruseRoute 函數(shù)。

?? 我們會(huì)經(jīng)常使用 router 實(shí)例,請(qǐng)記住,this.$router 與直接使用通過 createRouter 創(chuàng)建的 router 實(shí)例完全相同。我們使用 this.$router 的原因是,我們不想在每個(gè)需要操作路由的組件中都導(dǎo)入路由

編程式導(dǎo)航

在 Vue 實(shí)例中,你可以通過 $router 訪問路由實(shí)例。因此你可以調(diào)用 this.$router.push。當(dāng)你點(diǎn)擊 <router-link> 時(shí),內(nèi)部會(huì)調(diào)用這個(gè)方法,所以點(diǎn)擊 <router-link :to="..."> 相當(dāng)于調(diào)用 router.push(...)。

聲明式 編程式
<router-link :to=“…”> router.push(…)

該方法的參數(shù)可以是一個(gè)字符串路徑,或者一個(gè)描述地址的對(duì)象。例如:

// 字符串路徑
router.push('/users/eduardo')

// 帶有路徑的對(duì)象
router.push({ path: '/users/eduardo' })

// 命名的路由,并加上參數(shù),讓路由建立 url
router.push({ name: 'user', params: { username: 'eduardo' } })

// 帶查詢參數(shù),結(jié)果是 /register?plan=private
router.push({ path: '/register', query: { plan: 'private' } })

// 帶 hash,結(jié)果是 /about#team
router.push({ path: '/about', hash: '#team' })
注意:如果提供了 path,params 會(huì)被忽略。

??router.push 和所有其他導(dǎo)航方法都會(huì)返回一個(gè) Promise,讓我們可以等到導(dǎo)航完成后才知道是成功還是失敗。文章來源地址http://www.zghlxwxcb.cn/news/detail-577742.html

路由傳參

{
    name: child
    path: '/child/:id',
    component: Child
},
{
    name: user
    path: '/user',
    component: User
}

params傳參

this.$router.push({
   path:'/child/${id}',
})
或者
this.$router.push({
   name: 'child',
   params: { id: '1001' }
})

獲取params: this.$route.params.id

query 傳參

this.$router.push({
   path:'/user', 
   query:{userId: '123'}
});
或者
this.$router.push({
   name: 'user', 
   query: {userId: '123'}
});

獲取query:this.$route.query.userId

綜合

this.$router.push({
   name: 'child',
   params: { id: '1001' },
   query: {title: '路由組件query傳參', userName: 'Jack'}
})

獲取params: this.$route.params.id
獲取query:this.$route.query.userId

到了這里,關(guān)于vue進(jìn)階-vue-route中 this.$router 與 this.$route 的區(qū)別的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(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.js:Vue-Router動(dòng)態(tài)路由從服務(wù)器接口獲取路由數(shù)據(jù)

    文檔 https://v3.router.vuejs.org/zh/installation.html 版本號(hào) 有幾種方式實(shí)現(xiàn)動(dòng)態(tài)路由: 前端配置 完整路由 ,通過接口返回的數(shù)據(jù)判斷是否可顯示,是否可訪問 前端配置 部分路由 ,由后端接口返回的數(shù)據(jù)生成新路由 拋開路由的思維,是否能直接通過 url查詢參數(shù) 或者是 動(dòng)態(tài)路徑參數(shù)

    2024年02月08日
    瀏覽(85)
  • vue-router.esm.js:2248 Error: Cannot find module ‘@/views/dylife/ 報(bào)錯(cuò)解決
  • 【Vue】Vue-route路由

    Vue-router官網(wǎng) 由vue-router模塊控制,需要額外安裝依賴。參考官網(wǎng) router-link:路由鏈接,跳轉(zhuǎn)至路由視圖,展示指定路由組件信息 router-view:路由視圖,展示路由組件信息 route:路由信息 router:路由對(duì)象 router-link 路由跳轉(zhuǎn),類似a標(biāo)簽,路由跳轉(zhuǎn)作用 router-view 路由視圖,用于其

    2023年04月22日
    瀏覽(20)
  • vue-router.esm.js?a12b:2046 Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation

    vue-router.esm.js?a12b:2046 Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation

    vue-router.esm.js?a12b:2046 Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation to current location: \\\"/home\\\". ? 報(bào)錯(cuò)原因:重復(fù)點(diǎn)擊路由導(dǎo)致,因?yàn)関ue-router引入了promise,當(dāng)我們使用this.$router.push時(shí)候需要多添加成功或失敗的回調(diào),否則就會(huì)報(bào)出以上的錯(cuò)誤。 原代碼 第一種 ? ? ? ? 在進(jìn)

    2023年04月08日
    瀏覽(186)
  • Vue 2和Vue 3路由Router創(chuàng)建的區(qū)別簡記(在main.js文件中引入的區(qū)別和router的js文件中創(chuàng)建語法的區(qū)別)

    Vue 2和Vue 3路由Router創(chuàng)建的區(qū)別簡記(在main.js文件中引入的區(qū)別和router的js文件中創(chuàng)建語法的區(qū)別)

    1、版本的搭配: Vue 2到Vue 3的改版升級(jí),同樣的帶來Vue Router的升級(jí)。創(chuàng)建Vue項(xiàng)目之后,我們可以在package.json文件中看到,Vue 2創(chuàng)建的項(xiàng)目往往是與Vue Router 3.X版本搭配的,而Vue 3創(chuàng)建的項(xiàng)目與Vue Router 4.X版本搭配。 Vue 3搭配Vue Router 4.X版本: Vue 2搭配Vue Router3.X版本: 2、在main

    2024年02月08日
    瀏覽(86)
  • 路由vue-route的使用

    路由vue-route的使用

    path:配置路由訪問的路徑 name:給路由起名字(命名路由) component:訪問路由時(shí),渲染的組件 App.vue 這個(gè)是vue-route里面提供的組件 作用:路由的出口 舉例:當(dāng)我訪問根路由時(shí)會(huì)渲染IndexView.vue組件 IndexView.vue中的內(nèi)容 而IndexView.vue中的內(nèi)容會(huì)在根組件下的 router-view/ 中展示 推

    2024年01月16日
    瀏覽(21)
  • Vue-route核心知識(shí)整理

    Vue-route核心知識(shí)整理

    目錄 1 相關(guān)理解 1.1 對(duì) vue-router 的理解 1.2 對(duì) SPA 應(yīng)用的理解 1.3?對(duì)路由的理解 1.3.1 什么是路由? 1.3.2 路由的分類 2 幾個(gè)注意點(diǎn) 3 路由的基本使用 4 嵌套 (多級(jí)) 路由 5 路由傳參 5.1 query 方式傳參 5.1.1?跳轉(zhuǎn)路由并攜帶query參數(shù), to的字符串寫法 5.1.2?跳轉(zhuǎn)路由并攜帶query參數(shù),

    2024年02月21日
    瀏覽(53)
  • vue-router3.x和vue-router4.x相互影響的問題記錄

    vue-router3.x和vue-router4.x相互影響的問題記錄

    項(xiàng)目中有一個(gè)系統(tǒng)使用的微前端,主站使用是 vue2 實(shí)現(xiàn)的,使用的是 vue-router3.x 。子應(yīng)用有使用 vue3 實(shí)現(xiàn)的,使用的為 vue-router4.x 。 該子應(yīng)用中的頁面A有通過操作按鈕觸發(fā)跳轉(zhuǎn)到其他子應(yīng)用頁面B的需求,此時(shí)使用的是 vue-router4.x 的編程式導(dǎo)航API。 當(dāng)通過點(diǎn)擊主站的Tab切換回

    2023年04月26日
    瀏覽(18)
  • vue-router筆記

    目的:為了實(shí)現(xiàn)SPA(單頁面應(yīng)用) vue-router是一個(gè)插件庫 安裝: 路由的配置路徑:/src/router/index.js 路由組件的目錄:/src/pages/ 一般組件的目錄:/src/components/ 使用: main.js: App.vue: About.vue: 不可見的路由組件在哪?? ? ? ? 被銷毀了 嵌套路由的案例: 路由傳參: query: 傳參

    2024年02月12日
    瀏覽(29)
  • 路由vue-router

    路由vue-router

    路由(英文:router)就是 對(duì)應(yīng)關(guān)系 SPA 指的是一個(gè) web 網(wǎng)站只有 唯一的一個(gè) HTML 頁面 ,所有組件的展示與切換都在這唯一的一個(gè)頁面內(nèi)完成。 此時(shí),不同組件之間的切換需要通過前端路由來實(shí)現(xiàn)。 結(jié)論: 在 SPA 項(xiàng)目中,不同功能之間的切換 ,要依賴于 前端路由 來完成!

    2024年02月07日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包