对Vue beforeRouteEnter 的next执行时机详解

前端之家收集整理的这篇文章主要介绍了对Vue beforeRouteEnter 的next执行时机详解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

@H_4030@<span style="background-color: #ccffcc">

背景


@H
403_0@今天在用vue实现界面的时候,想在beforeRouteEnter钩子函数中去获取数据,然后通过next方法设置到@R345404@面的实例中,结果发现数据一直没办法在界面渲染的时候赋值,苦思不得其解,遂google之,终寻原因,记录之。


@H_403_0@

注意


<div class="jb51code">
<pre class="brush:js;">
beforeRouteEnter (to,from,next) {
console.log(this); //undefined,不能用this来获取vue实例
console.log('组件路由钩子:beforeRouteEnter');
next(vm => {
console.log(vm); //vm为vue的实例
console.log('组件路由钩子beforeRouteEnter的next');
});
}

{console.log(‘next') })
@H_403_0@这个里面的代码很晚执行,执行时机在组件mounted周期之后

@H_403_0@拓展知识:对vue中的beforeRouteEnter()和beforeRouteLeave()的函数解释

@H_403_0@

1、beforeRouteEnter(to,next){

@H_403_0@要执行的代码操作

@H_403_0@next();

@H_403_0@}

@H_403_0@beforeRouteEnter:进入路由之前执行的函数

@H_403_0@next(); --》 必须有这个,相当于一个按钮开启一样。

@H_403_0@

2、beforeRouteLeave(to,next){

@H_403_0@要执行的代码操作

@H_403_0@next();

@H_403_0@}

@H_403_0@beforeRouteLeave:离开路由之前执行的函数

@H_403_0@next(); --》 必须有这个,相当于一个按钮开启一样。

@H_403_0@以上这篇对Vue beforeRouteEnter 的next执行时机详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。

猜你在找的Vue相关文章