我正在研究一个使用户能够撤消对项目的删除的组件。但是,当用户导航到另一条路线时,应删除该项目。为此,我正在观察这样的路线:
`watch: {
$route(to, from) {
if (this.showUndo === true) {
console.log('item will be deleted');
this.confirmDelete();
}
},
},
`
[不幸的是,只有当我输入此特定路线而不是退出时才会触发。一个解释为什么会这样或作为我的watch:
-方法的替代方法将不胜感激!
基本上,我正在寻找beforeRouteLeave
的替代方案,因为这是一个子组件,因此不能使用导航护罩。谢谢!
Vue lifecycle hook- BeforeDestroy在拆卸之前就被触发了。您的组件仍将完全存在并且可以正常工作。如果您需要清除事件或反应性订阅,beforeDestroy大概是时候了。
<script>
export default {
beforeDestroy() {
//Try like this
this.confirmDelete();
console.log('item will be deleted');
}
}
</script>