rut*_*ut2 0 vue.js vue-component vuejs2
我面临着vue.js eventBus非常重要和奇怪的问题.
我的代码是这样的,
mounted: function() {
eventBus.$on('load-item', () => {
// some loading data ajax
})
}
Run Code Online (Sandbox Code Playgroud)
所以,如果我第一次进入这个组件,它将只执行一次.但是如果我切换到其他组件然后又回到这个组件,事件会发出一次,但是监听器正在执行这个功能2次.因此每次访问此组件时,它都会越来越多地加载数据.第三次3 Ajax请求.第4次4 ajax等.
我试过以下解决方案,
beforeDestroy: function () {
eventBus.$off('load-item');
}
Run Code Online (Sandbox Code Playgroud)
所以上面的代码将删除监听器,它是否只在它破坏组件时才起作用.但就我而言,如果另一个视图使用相同的组件,则会出现相同的问题.
我的问题是,当我们更改页面时,完全删除事件监听器的最佳方法是什么?
在vue.js有什么东西吗?
如果您不清楚,我可以详细解释.
| 归档时间: |
|
| 查看次数: |
2358 次 |
| 最近记录: |