场景重现:点击添加,判断form中的数据formData{}和tableData[]中已添加的数据是否重复
思路:利用some方法,如果有一个元素满足条件,则表达式返回true,否则返回false。
具体实现:
addMute() {
this.$refs.form.validate((val) => {
if (!val) {
return;
}
// 校验用户
delete this.formData.setting
checkUserApi(this.formData).then(res => {
if(res) {
if (res.code !== 200) {
this.$message.warning(res.message)
} else {
if(this.tableData.length==0){
this.tableData.push(res.result);
this.$refs.form.resetFields()
this.formData={
userId:'',
setting:'',
muteTime:'',
explanation:''
}
}else{
let user = this.tableData.some(item=>{
return item.userId=== this.formData.userId
})
if(user){
this.$message.warning('已添加该用户')
}else{
this.tableData.push(res.result);
console.log(this.tableData);
this.$refs.form.resetFields()
this.formData={
userId:'',
setting:'',
muteTime:'',
explanation:''
}
}
}
}
}
})
})
},