vue2 eventbus路由切换后的问题
这是list页
路由跳转到details页面后
用Bus.$on接收
问题是,第一次跳转过去会触发不了事件,第二件能触发但是触发了两次,后面点一次details里就会增加一次
test.gif
console出来了123123123123就代表去details的$on了
求大神!!!!!
vue2 eventbus路由切换后的问题
这是list页
路由跳转到details页面后
用Bus.$on接收
问题是,第一次跳转过去会触发不了事件,第二件能触发但是触发了两次,后面点一次details里就会增加一次
test.gif
console出来了123123123123就代表去details的$on了
求大神!!!!!
6 回答3k 阅读✓ 已解决
6 回答2.4k 阅读
5 回答6.4k 阅读✓ 已解决
2 回答2k 阅读✓ 已解决
2 回答1.5k 阅读✓ 已解决
2 回答987 阅读✓ 已解决
2 回答1.7k 阅读✓ 已解决
在已經用到
vue-router
並且需要跨組件傳遞的情境,還是用vuex
好,不過真的要用EventBus
的話:List
Detail
因為
vue-router
切換會是,先加載新的組件,等新的組件渲染好但是還沒掛載前,銷毀舊組件,在掛載新組件。切換時
這樣就可以知道新組件只要在舊組件 beforeDestroy 前,
$on
事件就可以成功接收到。例子:jsFiddle
不過
還是建議使用
Vuex
之類的狀態管理方案,不然程序一大,事件傳遞將導致整個流程非常難維護。