const api = this.ruleForm.id ? alarmProtocolUpdate : alarmProtocolAdd api(this.ruleForm).then((res => { if (res.code !== 200) { return false } this.$message({ message: this.ruleForm.id ? '编辑成功' : '添加成功', type: 'success' }); this.close() this.$emit("ben_can") })) 如何不管this.ruleforem 有没有都执行 第一个
时间: 2024-01-19 09:02:25 浏览: 140
解决vue.js this.$router.push无效的问题
5星 · 资源好评率100%
你可以使用逻辑非运算符 `!` 来判断 `this.ruleForm.id` 是否为 `undefined` 或 `null`,如果是,则将其赋值为一个空对象,即 `{}`。这样在后面的三目运算符中,`this.ruleForm.id` 就会被认为是存在的,然后执行 `alarmProtocolAdd` 方法。
修改后的代码如下:
```
const api = (!this.ruleForm.id ? alarmProtocolAdd : this.ruleForm.id ? alarmProtocolUpdate : alarmProtocolAdd)
api(this.ruleForm).then((res => {
if (res.code !== 200) { return false }
this.$message({
message: this.ruleForm.id ? '编辑成功' : '添加成功',
type: 'success'
});
this.close()
this.$emit("ben_can")
}))
```
阅读全文