美文网首页
Vue router beforeEach为什么执行两次

Vue router beforeEach为什么执行两次

作者: KevinLee0424 | 来源:发表于2023-08-10 10:00 被阅读0次

    当使用 Vue Router 时,beforeEach函数会在每个路由切换前执行一次,它的返回值会影响路由切换的行为。beforeEach函数的执行次数是由以下因素决定的:

    1. 次数与路由切换次数相等,每个路由切换都会执行一次beforeEach函数。
    2. 次数与异步加载路由组件次数相等,如果使用了异步路由组件,那么每个异步路由组件的加载都会执行一次 beforeEach函数。

    因此,出现 beforeEach执行两次的场景,可能是两种原因之一:

    1. 路由切换时,一个异步路由组件正在加载,导致 beforeEach函数被执行了两次。
    2. 代码中存在多个路由实例或者路由拦截器,导致每个路由拦截器都执行了一遍 beforeEach函数,从而执行了两次。

    相关文章

      网友评论

          本文标题:Vue router beforeEach为什么执行两次

          本文链接:https://www.haomeiwen.com/subject/guzapdtx.html