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 里面 调用接口 筛选是否输入的值在数据库中存在 通过回掉函数抛出错误