vue.js - 这是一种反模式,还是有更简单的方法来检测 Vue 是否被破坏?
问题描述
我有 Vue 实例不断轮询某些状态,如果实例被销毁,我想取消轮询。
目前,我执行以下逻辑,但好奇是否有内置属性或方法可以简化此操作:
export default {
data: () => ({
destroyed: false // seems like an anti-pattern
}),
beforeDestroy(){
this.destroyed = true; // seems like an anti-pattern
},
methods: {
check(){
if (this.destroyed) return; // would prefer this.$isDestroyed
if (await forSomething()) {
return this.check();
}
}
},
mounted(){
this.check();
}
}
解决方案
推荐阅读
- angular - 如何将 ngModel 值绑定到 select-searchable 选项中?
- python - Python 无法从列表中删除 None 值
- macos - 是否有任何 API 可以获取 macOS 中应用程序的全盘访问信息?
- assembly - 早期的 BIOS 如何使用 CALL?(跟进)
- java - 更改语言三星 S8+
- javascript - 将 192 场比赛的赛程分成 6 场比赛的周,没有重复的团队
- angular - Angular 8:监听不可访问组件中的内部元素
- here-api - 使用heremaps MapRoute API,是否可以在地图上绘制虚线作为路线?
- elasticsearch - 为什么在弹性搜索中创建了 150 个滚动上下文?
- excel - 在 VBA 中使用 IF 语句对不同行进行数据验证