菜鸡遇到了个问题:
在app.vue的router-view外套了一层 keep-alive
在二级页进行切换的时候可以watch $route 的进入与离开
但是,如果去掉keepalive,则watch不到$route的进入与离开,同时组件内的路由守卫进入与离开也均不能触发
是我写了bug吗,还是watch以及守卫会受keep alive影响?
菜鸡遇到了个问题:
在app.vue的router-view外套了一层 keep-alive
在二级页进行切换的时候可以watch $route 的进入与离开
但是,如果去掉keepalive,则watch不到$route的进入与离开,同时组件内的路由守卫进入与离开也均不能触发
是我写了bug吗,还是watch以及守卫会受keep alive影响?
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
2 回答4.7k 阅读✓ 已解决
4 回答4.3k 阅读✓ 已解决
这个需要看你watch是写在哪里了。
如果你是在页面内部
watch $route
,那么如果没有keepalive,肯定是不会watch的,因为在页面在路由离开之后已经销毁了。keepalive
的作用就是在路由离开后,仍然保持页面。keepalive