例如
var vm=new Vue{
//something
}
vm.destroy()
并不能清除已有的页面上的DOM,甚至可以获取到vm.$data,请问如何才能完全销毁呢
例如
var vm=new Vue{
//something
}
vm.destroy()
并不能清除已有的页面上的DOM,甚至可以获取到vm.$data,请问如何才能完全销毁呢
补充一点:想要清除页面的 DOM,需要使用 v-if,或者修改 v-for 中涉及到的数组或对象
https://cn.vuejs.org/v2/api/#...
另外,调用 app.$destroy() 之后,你会发现,app.message = 'Yes, he is a boy.' 不会对页面产生影响。
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答4.8k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
4 回答1.9k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
$destroy只是完全销毁一个实例。清理它与其它实例的连接,解绑它的全部指令及事件监听器。
参见 https://cn.vuejs.org/v2/api/#...
它并不是用来清除已有页面上的DOM的。
包括Watcher对象从其所在Dep中释放
移除所有事件的监听
patch一个null目的是触发所有的destroy钩子。