赞
踩
1.需求:在el-select下拉选择的时候,当我们更换选项时需要弹出二次确认弹窗。
2.思路:利用el-select中change事件,通过watch监听数据变换,定义一个初始状态,当点击弹窗中确认时设置成功,点击取消时,将将监听到的旧值赋给点击的值。
3.代码:
- <el-select v-model="tab_id" placeholder="请选择" @change="tabidChange">
- <el-option v-for="item in tabList" :key="item.id" :label="item.title" :value="item.id"> </el-option>
- </el-select>
-
- watch: {
- tab_id(val,oldval){
- console.log(val,oldval,"监听");
- this.oldval = oldval
- }
- },
-
- tabidChange(val){
- let tab_titel = this.tabList.find((res)=>{
- return res.id == val
- })
- this.$confirm(`确认将「${tab_titel.title}」频道页面设置成得到首页?`, "警告", {
- confirmButtonText: "确定",
- cancelButtonText: "取消",
- type: "warning",
- })
- .then(() => {
- this.$message({
- type: "success",
- message: "设置成功!",
- });
- })
- .catch(() => {
- this.$message({
- type: "error",
- message: "已取消设置",
- });
- //将监听到的旧值赋给点击的值
- this.tab_id = this.oldval;
- });
- },
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。