vue form.resetFields() 的坑
2021-04-17 本文已影响0人
你们不要再打
一个项目,我改同事写好的前端代码。
看到一个 form.resetFields()
我询问是用来重置对象的。
就把下面的一句 delete this.form.id
给删了,
心想,都重置了,再把这个属性删了,不是多此一举吗!
好嘛,我本以为是重置成在 data 里定义时的样子。
结果,还真是™的定义时的样子。
在form
使用过程中,给它新加了一个属性 id
………
后果不堪设想!!!
后来测试,resetFields()
只会重置对象在定义时定义的属性的值!
就是说
// 定义时
form: {
name: '',
age: 0
}
调用resetFields()
后,只会重置 name, age
,
如果在 resetFields()
前,this.form.id = 2333
那么调用resetFields()
后 form
是这样的:
form: {
name: '',
age: 0,
id: 2333
}
这次事故告诉我:千万别手贱,删别人的代码!!!