Ant Design框架 form表单 数据绑定,赋值 / 获取 数据

前言:AntD框架官网表单不是用:v-model进行数据绑定而是用:v-decorator="['name']"

【赋值】创建好所需要的form表单,绑定好key值:例:(v-decorator="['name']")

// 需要的form表单
<a-form :form="form">
    <a-form-item label="名称:">
	    <a-input placeholder="请输入名称" v-decorator="['name']"></a-input>
    </a-form-item>
	<a-form-item label="文本:">
	    <a-input placeholder="请输入名称" v-decorator="['text']"></a-input>
	</a-form-item>
</a-form>

【赋值】在data里面定义form,注:(必须)

// data里面要定义 form(必须)
data() {
    return {
        form: this.$form.createForm(this),
    }
}

【赋值】在methods方法里写

方式一:对象赋值(普遍用于少量数据赋值)

// 自定义数据
let data = {
    a:'数据1', 
    b:'数据2'
}
// 通过this.form.setFieldsValu进行表单赋值
// 数据绑定 跟v-model效果一样
this.form.setFieldsValue({
   text: data.a,
   name: data.b,
})
// text: '数据1', name: '数据2'
// text name 是上面在表单中绑定好的key名
v-decorator="['text']"
v-decorator="['name']"

方式二:需要导入 lodash 的 pick 函数:import pick from 'lodash.pick'

data数据定义字段名,跟表单字段名一致

赋值方式跟ES6解构赋值相似

//导入 pick     import pick from 'lodash.pick'

let data = { name: '数据1', text: '数据2', age: '数据3' }
    this.$nextTick(() => {
        this.form.setFieldsValue(pick(data, 'name', 'text', 'age'))
    })
// name: '数据1'
// text: '数据2'
// age:  '数据3'
// 表单框内会出现对应赋值的数据

【获取】获取整个form表单的当前值,可以是输入的,也可以是赋值的

// 获取表单所有数据 value
this.form.validateFields((err, value) => {
    if (!err) { // 这个err是判断表单必填项的,如果不加,必填项失效
        console.log(value);
    }
})
// 获取全部表单内存在的数据(输入的||赋值的)
// text: '数据1'
// name: '数据2'

【获取】获取form表单 单个数据的值

let a = this.form.getFieldValue('text')
console.log(a);
// '数据1'
let b = this.form.getFieldValue('name')
console.log(b);
// '数据2'

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值