el-dialog中设置了destroy-on-close属性为true,dom依旧未被销毁的两种解决方案

今天后台给我提了个bug,页面中是一个列表,点击子项会弹一个对话框,在el-dialog中嵌套了el-table,滚动对话框中的列表的时候,关闭对话框后后,点击别的子项的时候上一次的滚动条位置被记录了。

当时想的是 把对象框重新渲染一下就行了,打开element文档果然有一个destroy-on-close属性设置为true,怎么都不生效。查阅了文档GitHub issure,貌似这个是一个bug。

既然不行,那就另想办法吧,我用v-if重新渲染一下总行吧,试了一下 是可以的。后来又试了一种方法,给el-dialog加一个key属性,值是动态唯一的,也能重新渲染,应该是el-dialog本身是带有缓存功能的

划重点:v-if、 添加key属性,两种方法都可解决

代码搬运工
原文地址:https://www.cnblogs.com/tw6668/p/14331094.html