当前位置:   article > 正文

el-dialog destroy-on-close的坑(关闭弹窗时触发了子组件的mounted)_destroyonclose

destroyonclose

表现:

设置了destroy-on-close为true的一个el-dialog,在关闭时候,触发了子组件的mounted。

查找原因:

在element的源码中,找到了destroy-on-close的实现原理:
在这里插入图片描述
在这里插入图片描述
当visible改变为false,即关闭dialog的时候,如果用户设置了destroyOnClose=true,则执行key++;
key是绑定在较外层的div上的,key值的变化会导致这个div重新渲染。

所以我们知道了,设置destroyOnClose=true并不会如同element官方文档描述的这样
在这里插入图片描述
而是刷新dialog内部的元素。
这属于是element官方文档措辞不严谨的问题。

解决:

如果你的需求只是销毁dialog中的元素,那么拉黑该属性,改用v-if。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/383556
推荐阅读
  

闽ICP备14008679号