正则校验 是否在数据库里面已经注册过的

 enterpriseName: [
          { required: true, message: '供应方名称不能为空', trigger: 'blur' },
          {
            validator: async (rule, value, callback) => {
              let { rows } = await listSupplierList({ supplierType: '0', })
              if (this.title == '修改供应方') {
                rows = rows.filter(item => item.enterpriseName !== value)
              }
              const flag = rows.some((item) => item.enterpriseName === value)
              if (flag) {
                callback(new Error('供应方名称不能重复'))
              } else {
                callback()
              }
            },
            trigger: 'blur'
          }
        ],
  socialCreditCode: [
          { required: true, message: '统一社会信用代码不能为空', trigger: 'blur' },
          {
            validator: async (rule, value, callback) => {
              let { rows } = await listSupplierList({ supplierType: '0', })
              if (this.title == '修改供应方') {
                rows = rows.filter(item => item.socialCreditCode !== value)
              }

              const flag = rows.some((item) => item.socialCreditCode === value)
              if (flag) {
                callback(new Error('统一社会信用代码不能重复'))
              } else {
                callback()
              }
            },
            trigger: 'blur'
          },
          { validator: validateTaxpayerSeniority, trigger: 'blur' }
        ],

这两个校验都是 同一个道理 在validator 里面 调用接口 筛选是否输入的值在数据库中存在 通过回掉函数抛出错误

Supongo que te gusta

Origin blog.csdn.net/weixin_69811594/article/details/131682123
Recomendado
Clasificación