Vue重置组件的骚操作
# Vue重置组件
我是在使用Element-ui的dialog组件弹出表单时遇到的,重复打开时会保留上次的数据及验证。
![](http://hcc-blog.oss-cn-beijing.aliyuncs.com/editor/15519304217214.png)
## 方案一
这个方案是我最开始用的,后来找到了更简单的方法
![](http://hcc-blog.oss-cn-beijing.aliyuncs.com/editor/15519304354903.png)
在dialog弹出框关闭事件里利用Vue中的nextTick特性来手动清空表单数据。
## 方案二(推荐)
![](http://hcc-blog.oss-cn-beijing.aliyuncs.com/editor/15519304589272.png)
直接在组件上绑定一个动态的key。
Vue会拿上次的key来做对比,如果一致则继续复用组件,否则重新渲染
`+new Date()`可以获取时间戳
![](http://hcc-blog.oss-cn-beijing.aliyuncs.com/editor/15519304711322.png)
是不是很简单?:tw-1f60f:
原创不易,留下评分 谢谢!
原创不易,留下评分 谢谢!
原创不易,留下评分 谢谢!
https://attach.52pojie.cn/forum/201807/28/125900hlztzbooleprbsyz.png 直接用自带的resetFields()方法不好么? 这个不错! 谢谢分享!!!! close(){
this.visible = false;
this.$refs["form1"].resetFields();
} 666,某些场景下可以使用 楼主是黑马的? 学习了.这操作不错 不错不错,刚好在看VUE 666,可还行
页:
[1]