美文网首页
ant-design form 关联的表单校验 force

ant-design form 关联的表单校验 force

作者: Rose_yang | 来源:发表于2021-05-06 08:35 被阅读0次
<a-col :span="16">
                  <a-form-item label="毛重">
                    <a-input v-decorator="[`wareSkuExtList[${index}].netWeight`, { rules: [{ required: true, validator: (rule, value, cb) => validatorGross(rule, value, cb, index) }] }]"
                             placeholder="请输入"
                             suffix="kg" />
             
                  </a-form-item>
                </a-col>
                <a-col :span="16">
                  <a-form-item label="净重">
                    <a-input v-decorator="[`wareSkuExtList[${index}].weight`, { rules: [{ required: true, validator: (rule, value, cb) => validatorNet(rule, value, cb, index) }] }]"
                             placeholder="请输入"
                             suffix="kg" />
                  </a-form-item>
                </a-col>
    // 毛重
    validatorGross (rule, value, cbfn, index) {
      const form = this.form
      // 获取净重
      let pkgList = form.getFieldsValue()
      console.log('pkgList', pkgList)
      let pkgs = pkgList.wareSkuExtList || []
      let net = pkgs[index].weight
      if (!value) {
        cbfn('请输入毛重')
      } else if (!value.trim().length) {
        cbfn('请输入范围为1到99的数字')
      } else if (isNaN(value)) {
        cbfn('请输入范围为1到99的数字')
      } else if (Number(value) > 99 || Number(value) < 1) {
        cbfn('请输入范围为1到99的数字')
      } else if (net) {
        form.validateFields([`wareSkuExtList[${index}].weight`], { force: true })
      }
      cbfn()
    },
    // 净重
    validatorNet (rule, value, cbfn, index) {
      const form = this.form
  
      // 获取净重
      let pkgList = form.getFieldsValue()
      let pkgs = pkgList.wareSkuExtList || []
      let gross = pkgs[index].netWeight
      if (!value) {
        cbfn('请输入净重')
      } else if (gross && (Number(value) > Number(gross))) {
        cbfn('净重应小于毛重')
      }
      cbfn()
    },

相关文章

网友评论

      本文标题:ant-design form 关联的表单校验 force

      本文链接:https://www.haomeiwen.com/subject/sickcltx.html