欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue3路由組件內(nèi)的路由守衛(wèi)onBeforeRouteLeave和onBeforeRouteUpdate使用

 更新時(shí)間:2024年05月08日 10:39:16   作者:NorthCastle  
這篇文章主要介紹了Vue3路由組件內(nèi)的路由守衛(wèi)onBeforeRouteLeave和onBeforeRouteUpdate使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

簡(jiǎn)介

組件內(nèi)的路由守衛(wèi),實(shí)際上就是兩個(gè) API 方法。

他們與普通的守衛(wèi)不同的是 : 他們是寫在組件內(nèi)的,在組件中監(jiān)聽路由的變化,不是全局的,比較靈活。

以下是兩個(gè) API 的功能說明:

  • onBeforeRouteLeave() : 守衛(wèi)在當(dāng)前路由離開時(shí)觸發(fā),例如 :從 /c 跳轉(zhuǎn)到 /a
  • onBeforeRouteUpdate(): 守衛(wèi)在當(dāng)前路由發(fā)生改變時(shí)觸發(fā),例如 : 從 /c/100 跳轉(zhuǎn)到 /c/200

案例

本案例演示上述兩個(gè) API 的基本使用,沒有太多的邏輯操作。

路由配置

// 導(dǎo)入 定義路由的兩個(gè)方法
import {createRouter,createWebHistory}  from 'vue-router'

// 引入組件
import componentA from "./componentA.vue";
import componentC from "./componentC.vue";

// 聲明路由跳轉(zhuǎn)的路徑與組件的對(duì)應(yīng)關(guān)系
const routsList = [
    {path:'/a',name:'aroute',component:componentA},
    {
        path:'/c/:id',
        name:'croute',
        component:componentC
    }

]

// 創(chuàng)建路由的實(shí)例對(duì)象
const routerConfigObj = createRouter({
    history:createWebHistory('abc'), // 帶一個(gè)參數(shù),表示是路由的一個(gè)前綴
    routes:routsList // 指定路由的配置列表
})

// 導(dǎo)出路由的對(duì)象
export default routerConfigObj;

組件C 中的API 使用代碼(核心)

<template>
    <div class="divb">
        這是組件C 
        <br>
        <button @click="goToA">跳轉(zhuǎn)到組件a</button>
        <br>
        <button @click="goToC200">更新到組件c200</button>
    </div>
    
</template>

<script setup lang="ts">

    // 引入路由相關(guān)的 API
    import {useRouter} from 'vue-router';

    // 聲明 路由對(duì)象和當(dāng)前路由對(duì)象
    const routeObj = useRouter()

    // 點(diǎn)擊按鈕,跳轉(zhuǎn)到組件a
    const goToA = ()=>{
        routeObj.push({
            path:'/a'
        })
    }

    // 更新到組件c 200
    const goToC200 = ()=>{
        routeObj.push({
            path:'/c/200'
        })
    }


    // 導(dǎo)入兩個(gè)組件內(nèi)的路由守衛(wèi)API
    import { onBeforeRouteLeave,onBeforeRouteUpdate } from 'vue-router';

    // 路由離開時(shí)的操作
    onBeforeRouteLeave((to,from)=>{
        console.log('組件c : onBeforeRouteLeave - to :',to);
        console.log('組件c : onBeforeRouteLeave - from :',from);
        alert('當(dāng)前內(nèi)容未保存,是否繼續(xù)離開?')
    })


     // 路由更新時(shí)的操作
     onBeforeRouteUpdate((to,from)=>{
        console.log('組件c : onBeforeRouteUpdate - to :',to);
        console.log('組件c : onBeforeRouteUpdate - from :',from);
        alert('即將跳轉(zhuǎn)到 /c/200,請(qǐng)稍等')
    })

</script>

<style scoped>
    .divb{
        width: 200px;
        height: 100px;
        background: rgb(23, 177, 182);
    }
</style>

運(yùn)行效果1:路由跳轉(zhuǎn)

運(yùn)行效果2:路由更新

總結(jié)

以上就是 組合式API 中的 兩個(gè)組件內(nèi)的 路由守衛(wèi)的操作。

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

相關(guān)文章

  • vue如何動(dòng)態(tài)獲取當(dāng)前時(shí)間

    vue如何動(dòng)態(tài)獲取當(dāng)前時(shí)間

    這篇文章主要介紹了vue如何動(dòng)態(tài)獲取當(dāng)前時(shí)間問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 使用vant-uploader上傳照片無法刪除的解決

    使用vant-uploader上傳照片無法刪除的解決

    這篇文章主要介紹了使用vant-uploader上傳照片無法刪除的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • vue實(shí)現(xiàn)列表垂直無縫滾動(dòng)

    vue實(shí)現(xiàn)列表垂直無縫滾動(dòng)

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)列表垂直無縫滾動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • vue處理emoji表情占位符的操作方法

    vue處理emoji表情占位符的操作方法

    在計(jì)算字符數(shù)時(shí),一般情況下,英文字符、數(shù)字和大部分符號(hào)都可以被視為占一個(gè)字符長(zhǎng)度,因?yàn)樗鼈兪菃蝹€(gè)字節(jié),然而,對(duì)于某些特殊字符,如表情符號(hào)和部分非英文字符,會(huì)被認(rèn)為占據(jù)了多個(gè)字符長(zhǎng)度,本文給介紹了vue處理emoji表情占位符的操作方法,需要的朋友可以參考下
    2024-06-06
  • 前端vue如何使用pptxgen.js導(dǎo)出PPT

    前端vue如何使用pptxgen.js導(dǎo)出PPT

    最近公司項(xiàng)目有個(gè)導(dǎo)出ppt的功能,在使用ppexgen.js一周完成功能之后,這篇文章主要給大家介紹了關(guān)于前端vue如何使用pptxgen.js導(dǎo)出PPT的相關(guān)資料,需要的朋友可以參考下
    2024-01-01
  • vue3.0 加載json的方法(非ajax)

    vue3.0 加載json的方法(非ajax)

    這篇文章主要介紹了vue3.0 加載json的方法(非ajax),幫助大家更好的理解和學(xué)習(xí)vue,感興趣的朋友可以了解下
    2020-10-10
  • 詳解element-ui級(jí)聯(lián)菜單(城市三級(jí)聯(lián)動(dòng)菜單)和回顯問題

    詳解element-ui級(jí)聯(lián)菜單(城市三級(jí)聯(lián)動(dòng)菜單)和回顯問題

    這篇文章主要介紹了詳解element-ui級(jí)聯(lián)菜單(城市三級(jí)聯(lián)動(dòng)菜單)和回顯問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • vue通過element樹形控件實(shí)現(xiàn)樹形表格

    vue通過element樹形控件實(shí)現(xiàn)樹形表格

    這篇文章主要為大家介紹了vue?element樹形控件實(shí)現(xiàn)樹形表格,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • vue-router二級(jí)導(dǎo)航切換路由及高亮顯示的實(shí)現(xiàn)方法

    vue-router二級(jí)導(dǎo)航切換路由及高亮顯示的實(shí)現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于vue-router二級(jí)導(dǎo)航切換路由及高亮顯示的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Vue具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • vue select 獲取value和lable操作

    vue select 獲取value和lable操作

    這篇文章主要介紹了vue select 獲取value和lable操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08

最新評(píng)論