element-ui的表单重置方法resetFields()的坑

坑一:官方写法,api也没有说明

1 resetForm(formName) {
2     this.$refs[formName].resetFields();
3 }

坑二:看这个写法知道:this.$refs 这个是必须dom渲染完成后。且表单需要有ref,formName的名字要一致

解决方法:

1 this.$nextTick(() => {
2     this.$refs[formName].resetFields()
3 })

坑三: 需要完整 el-form及 form-item 组件中 且 配置 prop,不配置的执行此方法,该输入框值不会重置

解决方法:
1.要不你每个都加prop。
2.我的表单太多,每个都加得累死,还得维护。所以,
执行此方法前都加了

this[formName] = {};

最终

1 resetForm(formName) {
2     this[formName] = {};
3     this.$nextTick(() => {
4         this.$refs[formName].resetFields()
5     });
6 }
posted @   小阿飞ZJF  阅读(404)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示