本地数据新增和编辑时校验名称是否重复
校验方法 index.js
//新增名称唯一校验
export function onlyVerify (arr, keyName, value) {
let isVerify = true;
if (arr.length > 0) {
arr.map((t) => {
console.log("t[keyName]:" + t[keyName]);
if (t[keyName] == value) {
isVerify = false;
}
});
}
return isVerify;
}
//编辑名称唯一校验
export function onlyEditVerify (arr, keyName, value, eidtId) {
let newArr = [];
arr.forEach((element) => {
if (eidtId != element.id) {
newArr.push(element);
}
});
return onlyVerify(newArr, keyName, value);
}
页面中使用index.vue
if(this.title == '新增'){
// 校验名称是否重复
if (!onlyVerify(this.polygonData, "name", this.areaForm.name)) {
this.$message.error("名称已存在!");
return false;
}
} else if(title == '编辑'){
// 校验名称是否重复
if (!onlyEditVerify(this.polygonData,"name",this.areaForm.name, this.areaForm.id)) {
this.$message.error("名称已存在!");
return false;
}
}