解决Ant Design Vue中form表单项初始值不能动态更新问题
问题出现场景实际工作项目中需要实现table表格的增改功能,添加与编辑页面使用了form表单填写信息。当添加/编辑页面填写完一次信息并提交后,再次点击添加/编辑按钮,form表单各项值仍为上一次数据的缓存解决方法汇总使用 resetFields() 解决,this.form.resetFields()若form表单中使用 initialValue 给表单各项赋初始值,使用此中方法最合适...
·
问题出现场景
实际工作项目中需要实现table表格的增改功能,添加与编辑页面使用了form表单填写信息。当添加/编辑页面填写完一次信息并提交后,再次点击添加/编辑按钮,form表单各项值仍为上一次数据的缓存,无法动态更新
解决方法汇总
- 使用 resetFields() 解决,
this.form.resetFields()
若form表单中使用 initialValue 给表单各项赋初始值,使用此方法最合适 - 使用 setFieldsValue解决,
this.form.setFieldsValue()
setFieldsValue()方法可以给表单赋初始值,并且初始值可以动态更新。这种方式要求 form 表单每一项必须使用 v-decorator 注册过,并且setFieldsValue({ })实际传入的变量名称要与表单项经v-decorator注册过的名称一一对应;
实际传入的变量数可以等于或少于form表单项个数,但不允许多于form表单项个数。否则会一直报错:warning.js?4eb8:34 Warning: You cannot set a form field before rendering a field associated with the
更多推荐
已为社区贡献15条内容
所有评论(0)