el-switch的before-change的使用方法
el-switch的before-change的使用方法
el-switch切换之前先确认是否要进行切换,做二次确认、使用before-change
<el-switch v-model="scope.row[item.key]" :before-change="() => beforeSwitchChange(scope.row)" @change="onSwitchChange(scope.row)" />
const onSwitchChange = (val: any) => {
emit('switchChange', val);
};
const beforeSwitchChange = (val: any) => {
const status = ElMessageBox.confirm(`是否切换?`, '提示', {
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
})
.then(() => {
return true;
})
.catch(() => {
return false;
});
return new Promise((resolve, reject) => {
if (status) {
// 点击确认按钮时设置tags值
return resolve(status);
} else {
return reject(status);
}
});
};