beforeRouteEnter 中的回调函数没有被触发
Callback function in beforeRouteEnter is not triggered
我有简单的路线:/follower/:token/edit 和 /follower/new
当我通过 $router.push('/follower/new') 从第一个移动到第二个时,触发了 befourRouteEnter 挂钩,但 'next' 函数中的回调函数没有(问题当我从不同的路线或重新加载页面时不存在)。
beforeRouteEnter(to, from, next) {
debugger; //is triggered
next(vm => {
debugger; //is not triggered
})
}
你知道什么是错误的吗?
Vue:2.5.17
Vue 路由器:3.0.1
此致
如果您使用相同的组件在路由之间导航 - vue 会尝试通过提供现金版本进行优化。我不确定这是否是您遇到的情况 - 但您可以尝试通过向 <router-view>
.
添加一个键值来强制重新实例化
一个 'common' 方法是使用 $route.path
<router-view :key="$route.path"></router-view>
我有简单的路线:/follower/:token/edit 和 /follower/new
当我通过 $router.push('/follower/new') 从第一个移动到第二个时,触发了 befourRouteEnter 挂钩,但 'next' 函数中的回调函数没有(问题当我从不同的路线或重新加载页面时不存在)。
beforeRouteEnter(to, from, next) {
debugger; //is triggered
next(vm => {
debugger; //is not triggered
})
}
你知道什么是错误的吗?
Vue:2.5.17 Vue 路由器:3.0.1
此致
如果您使用相同的组件在路由之间导航 - vue 会尝试通过提供现金版本进行优化。我不确定这是否是您遇到的情况 - 但您可以尝试通过向 <router-view>
.
一个 'common' 方法是使用 $route.path
<router-view :key="$route.path"></router-view>