Form 表单开发特殊性


v-decorator 属性 针对特殊控件: select、radio、checkbox

<a-radio-group buttonStyle="solid" v-decorator="[ 'status', {'initialValue':0}]">
    <a-radio-button :value="0">正常</a-radio-button>
    <a-radio-button :value="-1">停止</a-radio-button>
</a-radio-group>

注意: 此处的默认值只能通过 {'initialValue':0} 设置,不能通过 defaultValue 属性设置,否则会报:

Warning: `defaultValue` is invalid for `getFieldDecorator` will set `value`, please use `option.initialValue` instead.

错误提示
这是因为经过 getFieldDecorator或v-decorator 包装的控件,表单控件会自动添加 value(或 valuePropName 指定的其他属性) onChange(或 trigger 指定的其他属性),数据同步将被 Form 接管。

表单编辑赋值操作:

this.$nextTick(() => {
    this.form.setFieldsValue(pick(this.model,'description','status'));
});