笔者一直在做后端,最近公司要求,帮助前端同时写一下前端页面。这里也记录下一些新学的知识,帮助大家避坑

在ant-design中,v-decorator可以实现双向绑定与表单验证。即如果你使用v-decorator 你可以不用使用v-model。

<a-form-item
          label="充值类目"
          :labelCol="{lg: {span: 7}, sm: {span: 7}}"
          :wrapperCol="{lg: {span: 10}, sm: {span: 17} }">
          <a-select
            v-decorator="[
              'productId',
              {initialValue: productData[0].productId ,rules: [{ required: true, message: '请输入平台订单' }]}
            ]"
            placeholder="请选择" >
            <a-select-option :key="item.productId" v-for="item in productData" :value="item.productId">¥{{item.productMoneyPrice}}/{{item.productNum}}钻石 ({{payType | typeFilter}})</a-select-option>
          </a-select>
        </a-form-item>

解析:
productId
为双向绑定的key 在后续中,你可以使用 下方代码获取值

this.form.validateFields((err, values) => {
        console.log('values', values)
        if (!err) {
          console.log('Received values of form: ', values)
        }
      })

initialValue
是下拉框加载时默认哪一个option。上述代码默认的是后端返回的数据中的第一个值。需要注意这里的字段要跟 :value 处的字段相同,否则无法匹配

如果你是写死的 ,那么你直接就可以 initialValue:‘alipay_app’ 这样编写。同样,他的值与你的option的value需要对应

rules
即规则,如果你的required为true,则在点击提交按钮时,会提示message处的内容
在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐