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

Vue2.x與Vue3.x中路由鉤子的區(qū)別詳解

 更新時(shí)間:2021年09月24日 09:55:28   作者:SpringSir  
這篇文章主要介紹了Vue2.x與Vue3.x中路由鉤子的區(qū)別,分別介紹了路由鉤子的分類,路由配置守衛(wèi)鉤子以及組件內(nèi)守衛(wèi)鉤子等有需要的朋友可以借鑒參考下

vue2.x

前置概念:

路由鉤子分類

一共分3類, 7個(gè)鉤子

路由和組件的概念(方便理解鉤子函數(shù))

路由和組件是2個(gè)概念, 可以粗獷的認(rèn)為:

  • 路由是瀏覽器網(wǎng)址
  • 組件是顯示在網(wǎng)頁上的不同內(nèi)容

全局路由鉤子

router.beforeEach(to, from, next){ } 前置導(dǎo)航守衛(wèi)

路由進(jìn)入前

router.afterEach(to, from, next){ } 后置導(dǎo)航守衛(wèi)

路由進(jìn)入后

router.beforeResolve(to, from, next){ } 解析守衛(wèi)

 

解析組件時(shí), 已經(jīng)讀取所有配置, 前面的關(guān)卡都通過了, 準(zhǔn)備解析組件前執(zhí)行

路由配置守衛(wèi)鉤子

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-iNt9TxY9-1631622860323)(C:\Users\hwm\AppData\Roaming\Typora\typora-user-images\image-20210914193901604.png)]

beforeEnter() 在讀取路由配置信息前調(diào)用

在beforeCreate()前執(zhí)行

const router = new VueRouter({
  routes: [
    {
      path: '/foo',
      component: Foo,
      beforeEnter: (to, from, next) => { }
    }
  ]
})

組件內(nèi)的守衛(wèi)鉤子

beforeRouteEnter(to, from, next){ } 進(jìn)入組件前

默認(rèn)不能獲取組件實(shí)例 this

但是以下辦法可以訪問

beforeRouteEnter(to, from, next){ 

  // next()的回調(diào)函數(shù),在進(jìn)入路由,實(shí)例化執(zhí)行
	next(vm => {
    // vm等價(jià)于當(dāng)前組件this
  })
}

beforeRouteUpdate(to, from, next){ } 修改組件前

當(dāng)前組件依然在使用路由地址改變滿足以上2個(gè)條件才會(huì)執(zhí)行

beforeRouteLeave(to, from, next){ } 離開組件前

路由鉤子執(zhí)行順序

eg: 從A組件跳轉(zhuǎn)到B組件順序

beforeRouteLeave() 先離開A組件

beforeEach() 全局-前置導(dǎo)航守衛(wèi)

beforeEnter() 讀取路由配置信息前 (讀取B路由信息)

beforeRouteEnter() 進(jìn)入組件前

beforeResolve() 解析守衛(wèi)

afterEach() 全局-后置導(dǎo)航守衛(wèi)

如果B路有更新, 每次都會(huì)執(zhí)行以下三個(gè)鉤子:

beforeEach() 全局 - 前置導(dǎo)航守衛(wèi)

beforeResolve() 全局 - 解析守衛(wèi)

beforeRouteUpdate() 組件內(nèi) - 修改組件前

vue3.x

vue3.x相對于vue2.x, 只有小部分不同, 此處只針對不同做講解

對比變化圖

請?zhí)砑訄D片描述

區(qū)別補(bǔ)充:

  • 在Vue2.x中, 有3個(gè)組件, 如果A組件跳轉(zhuǎn)到B組件, B組件中存在子組件:

B組件中的子組件不會(huì)觸發(fā)路由鉤子

  • 在Vue3.x中, 有3個(gè)組件, 如果A組件跳轉(zhuǎn)到B組件, B組件中存在子組件:

B組件中的子組件會(huì)觸發(fā)路由鉤子: onBeforeRouteUpdate和onBeforeRouteLeave
B組件中的子組件不會(huì)觸發(fā)路由鉤子

  • 在Vue3.x中, 有3個(gè)組件, 如果A組件跳轉(zhuǎn)到B組件, B組件中存在子組件:

B組件中的子組件會(huì)觸發(fā)路由鉤子: onBeforeRouteUpdate和onBeforeRouteLeave

以上就是Vue2.x與Vue3.x中路由鉤子的區(qū)別詳解的詳細(xì)內(nèi)容,更多關(guān)于Vue2.x與Vue3.x中路由鉤子的區(qū)別的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Vue 集成 storybook的方法

    Vue 集成 storybook的方法

    這篇文章主要介紹了Vue 集成 storybook的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-12-12
  • Vue-CLI3.x 設(shè)置反向代理的方法

    Vue-CLI3.x 設(shè)置反向代理的方法

    這篇文章主要介紹了Vue-CLI3.x 設(shè)置反向代理的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-12-12
  • Vue動(dòng)態(tài)組件與異步組件實(shí)例詳解

    Vue動(dòng)態(tài)組件與異步組件實(shí)例詳解

    這篇文章主要介紹了Vue動(dòng)態(tài)組件與異步組件,結(jié)合實(shí)例形式分析了動(dòng)態(tài)組件與異步組件相關(guān)概念、功能及使用技巧,需要的朋友可以參考下
    2019-02-02
  • vue中使用go()和back()兩種返回上一頁的區(qū)別說明

    vue中使用go()和back()兩種返回上一頁的區(qū)別說明

    這篇文章主要介紹了vue中使用go()和back()兩種返回上一頁的區(qū)別說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • vue實(shí)現(xiàn)左右伸縮方式(el-drawer自定義位置展開收縮)

    vue實(shí)現(xiàn)左右伸縮方式(el-drawer自定義位置展開收縮)

    這篇文章主要介紹了vue實(shí)現(xiàn)左右伸縮方式(el-drawer自定義位置展開收縮),具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • vue使用路由技術(shù)實(shí)現(xiàn)登錄成功后跳轉(zhuǎn)到首頁

    vue使用路由技術(shù)實(shí)現(xiàn)登錄成功后跳轉(zhuǎn)到首頁

    本文主要介紹了vue使用路由技術(shù)實(shí)現(xiàn)登錄成功后跳轉(zhuǎn)到首頁,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-05-05
  • vue 如何使用vue-cropper裁剪圖片你知道嗎

    vue 如何使用vue-cropper裁剪圖片你知道嗎

    這篇文章主要為大家介紹了vue 使用vue-cropper裁剪圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • vue 3.x 中mixin封裝公用方法應(yīng)用方式

    vue 3.x 中mixin封裝公用方法應(yīng)用方式

    這篇文章主要介紹了vue 3.x 中mixin封裝公用方法應(yīng)用方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • vue中的自定義屬性并獲得屬性的值方式

    vue中的自定義屬性并獲得屬性的值方式

    這篇文章主要介紹了vue中的自定義屬性并獲得屬性的值方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • 在Vue中注冊和使用自定義指令的操作指南

    在Vue中注冊和使用自定義指令的操作指南

    在Vue中,自定義指令提供了一種機(jī)制來直接操作DOM元素,或者在元素的生命周期中注入特定的行為,自定義指令可以封裝復(fù)雜的DOM操作,使得它們可以像內(nèi)置指令一樣被復(fù)用和維護(hù),本文將介紹如何在Vue中注冊和使用自定義指令,需要的朋友可以參考下
    2025-05-05

最新評論