如何手动销毁Vue组件的挂载过程可以详细描述为长尾?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1032个文字,预计阅读时间需要5分钟。
目录+手动销毁Vue挂载的组件+如何解决+vue+销毁实例
1.导入vue创建一个VM实例
2.vm.$destroy()只能销毁实例中的方法,但不能清除DOM和data
3.手动销毁Vue挂载的组件+因为很多页面需要用到ke
目录
- 手动销毁Vue挂载的组件
- 如何解决
- vue 销毁实例
- 1.导入vue创建一个VM实例
- 2.vm.$destroy()只能销毁实例里的方法但不能清除DOM和data吗?
手动销毁Vue挂载的组件
因为很多页面需要用到<keep-alive>,我就用其将承载页面的父组件包裹了,但这也带来了一些问题。比如新写的页面中,进入下个页面还在调用上个页面的数据(以前没有遇到过,不清楚是是什么原因),即已经切换路由却无法自己destory掉,打日志发现确实没有跑destoryed这个生命周期函数。
如何解决
在需要删除的组件中的deactivated生命周期函数中手动调用this.$destroy('componentName'),这里的componentName即这个组件的name,使用后发现destoryed函数确实可以正常使用了,而且进入下一个页面也不会再报错说缺少这个页面的数据。
本文共计1032个文字,预计阅读时间需要5分钟。
目录+手动销毁Vue挂载的组件+如何解决+vue+销毁实例
1.导入vue创建一个VM实例
2.vm.$destroy()只能销毁实例中的方法,但不能清除DOM和data
3.手动销毁Vue挂载的组件+因为很多页面需要用到ke
目录
- 手动销毁Vue挂载的组件
- 如何解决
- vue 销毁实例
- 1.导入vue创建一个VM实例
- 2.vm.$destroy()只能销毁实例里的方法但不能清除DOM和data吗?
手动销毁Vue挂载的组件
因为很多页面需要用到<keep-alive>,我就用其将承载页面的父组件包裹了,但这也带来了一些问题。比如新写的页面中,进入下个页面还在调用上个页面的数据(以前没有遇到过,不清楚是是什么原因),即已经切换路由却无法自己destory掉,打日志发现确实没有跑destoryed这个生命周期函数。
如何解决
在需要删除的组件中的deactivated生命周期函数中手动调用this.$destroy('componentName'),这里的componentName即这个组件的name,使用后发现destoryed函数确实可以正常使用了,而且进入下一个页面也不会再报错说缺少这个页面的数据。

