vue vue3

博主:xiaoweixiaowei 2022-12-28 条评论

vue-router的导航钩子有:1.全局导航钩子;2.组件内的钩子;3.单独路由独享组。

vue-router的导航钩子有三种,分别是:1.全局导航钩子;2.组件内的钩子;3.单独路由独享组,主要是用来拦截导航,让他完成跳转或取消,以下是导航钩子的使用示例:

1.全局导航钩子。

注意:全局导航钩子主要有前置守卫和后置钩子两种。

//前置守卫

const router = new VueRouter({ ... });

router.beforeEach((to, from, next) => {

// do someting

});


//后置钩子

router.afterEach((to, from) => {

// do someting

});


2.组件内的钩子。

注意:组件内的导航钩子主要有beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave这三种。

const File = {

    template: `<div>This is file</div>`,

    beforeRouteEnter(to, from, next) {

        // do someting

        // 在渲染该组件的对应路由被 confirm 前调用

    },

    beforeRouteUpdate(to, from, next) {

        // do someting

        // 在当前路由改变,但是依然渲染该组件是调用

    },

    beforeRouteLeave(to, from ,next) {

        // do someting

        // 导航离开该组件的对应路由时被调用

    }

}

3.单独路由独享组。

//在路由配置上直接进行定义

cont router = new VueRouter({

routes: [

{

path: '/file',

component: File,

beforeEnter: (to, from ,next) => {

// do someting

}

}

]

});


The End

发布于:2022-12-28,除非注明,否则均为 主机评测原创文章,转载请注明出处。