vue ant design 表单form默认值问题解决

vue You cannot set a form field before rendering a field associated with the value. 问题解决

          • 方式一、
          • 方式二、
          • 方式三、
          • 方式四、

问题起因:使用了表单的方法setFieldsValue(),来设置一组输入控件的值,传入的值为object,但是传入的值要和表单的值一一对应,能少传不能多传。遇到这种情况的解决方式为:form渲染需要什么值你就传什么值

方式一、
 this.form.setFieldsValue({
      note: '123', mark: '456' })
方式二、
add (record) {
       
   this.visible = true
   this.mdl = Object.assign({
     }, record)  // 浅拷贝
   this.form.setFieldsValue(pick(this.mdl, 'note', 'mark'))  // loadsh的pick方法
}
方式三、
this.$nextTick(()=>{
     
    this.form.setFieldsValue(pick(this.mdl, 'note', 'mark'))  // loadsh的pick方法
})
// 一般来说,这个问题比较出现的次数比较多
方式四、
this.$nextTick(() => {
     
     setTimeout(() => {
     
     	this.form.setFieldsValue(pick(this.mdl, 'note', 'mark'))  // loadsh的pick方法
     })
})

你可能感兴趣的:(vue ant design 表单form默认值问题解决)