在项目中使用antd的Form组件的setFieldsValue方法的时候发现控制台多了一个警告⚠️:You cannot set a form field before rendering a field associated with the value.
这句话什么意思呢?在渲染与值关联的字段之前,不能设置表单字段(用有道翻译出来的,其实偷偷告诉你,读了好几遍都没读懂)
一开始,我以为是生命周期的问题,根据提示的警告以为是应该在render之后才能赋值,所以,沿着错误的步伐在错误的道路上走的一去不回,最终还是没有解决问题
后来,终于发现了问题所在:
this.props.form.setFieldsValue这个方法里面传值的时候只能是form中用到的参数(即是getFieldDecorator方法中所设置的fieldName)没有的field(表单属性)一律不允许多传,否则就会报错
所以,检查一下,有哪些字段没有作为表单属性名,而又在this.props.form.setFieldsValue设置值的时候用到了