美文网首页
Vue $route无法检测的原因

Vue $route无法检测的原因

作者: 钱英俊真英俊 | 来源:发表于2020-03-16 09:51 被阅读0次

    做测试的时候随手在组件内写下watch $route却发现没有执行。但正常项目中确是可以使用的。测试了几组,发现$route并不是在任意组件内都可以监听到

    可以监听到变化的情况

    1. App.vue文件中可以监听到
    2. 不同路由使用同一页面的组件,可以在页面中监听
    3. 父路由不变,子路由变化,可以在父路由中监听

    不可以监听到变化的情况

    1.不同的页面组件监听不到
    2.不同页面下的公共组件监听不到
    3.父路由不变,子路由变化,子路由中监听不到

    • 解析

    因为watch只是在监听变化时运行,并且运行在没有被销毁的组件中。如果是切换路由,导致组件重新渲染,被重新渲染的组件内的'watch'因为没有监测到变化,不会被运行。

    相关文章

      网友评论

          本文标题:Vue $route无法检测的原因

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