Omi*_*mid 3 vue.js vue-router
beforeRouteLeave单击 时会触发组件内防护<router-link to="/">。但是,当我以编程方式调用时,它不会被触发router.push({ path: "/" })。
beforeRouteLeave
<router-link to="/">
router.push({ path: "/" })
难道这有什么问题吗?
编辑
我只是尝试制作一个沙箱,发现只要使用动态参数导航到同一路径就会发生这种情况。
例如,从 导航到/item/1会/item/2导致此问题。
/item/1
/item/2
Sam*_*meh 6
我认为这是一种意想不到的行为,如果您提供更多背景信息,将会有更多帮助。
如果您只是传递不同的参数,您实际上并没有离开路线beforeRouteLeave,这就是为什么不会被触发的原因。
相反,您可能想使用beforeRouteUpdate
beforeRouteUpdate
有关组件内防护的更多信息,请参阅文档。
归档时间:
6 年,2 月 前
查看次数:
1731 次
最近记录: