el-select 控件一旦选择了选项,v-modal绑定的字段就被更新了,所以如果要想在v-modal被更新之前进行二次弹窗确认,需要记录住上一次的v-modal值,使用watch来监听v-modal绑定的字段来获取到旧值。
<bs-select
v-model="formData.enableSuperviseMode"
clearable
:data="enableSuperviseModeList"
@change="enableSuperviseModeSelect"
></bs-select>
js代码:
watch: {
'formData.enable': {
immediate: true,
handler(val, oldVal) {
this.oldEnable = oldVal
}
}
},
methods: {
async enableSelect() {
try {
// 弹窗确认
await this.$confirm2.warning('确定保存启用模式?')
// 调接口保存
} catch {
// 若取消了 赋值成旧值
this.formData.enable = this.oldEnable
}
}
}