Vue项目表单项很多 没有绑定prop 表单重置
作者:@ywjbalabala
本文为作者原创,转载请注明出处:https://www.cnblogs.com/ywjbalabala/p/17210169.html
element-UI的表单组件在使用时需要绑定prop属性才能使用自带的resetField重置表单,如果遇到表单项很多,而且大部分不需要校验,为了重置去一个一个设置prop的话很麻烦。
所以可以使用Object.assign来解决表单重置问题。
我们可以通过this.$data获取当前状态下的data,通过this.$options.data()获取该组件初始状态下的data。然后只要使用Object.assign(this.$data, this.$options.data())就可以将当前状态的data重置为初始状态,达到重置表单的目的。
相关代码如下:
export default { data() { return { systemInfoArr: [], unitListArr: [], formSelectObj: { systemInfo: { // 业务系统列表 name: 'systemInfo', arr: [], selectVal: '', value: '', curSelect: null }, unitList: { // 用户配置系统 name: 'unitList', arr: [], selectVal: '', value: '', curSelect: null } } } }, methods: { resetForm(){ Object.assign(this.$data.formSelectObj, this.$options.data().formSelectObj) // 这里重置 formSelectObj 数据,其他不受影响 Object.assign(this.$data, this.$options.data()) // 这里重置 data 下的所有数据 } }
作者:ywjbalabala
出处:https://www.cnblogs.com/ywjbalabala/
本文版权归作者和博客园所有,欢迎转载。转载请在留言板处留言给我,且在文章标明原文链接,谢谢!
如果您觉得本篇博文对您有所收获,觉得我还算用心,请点击右下角的 [推荐],谢谢!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通