vue:通用询问弹框

原生js中每次执行删除操作的时候都会调用ifConfirm(msg)来询问是否确定执行,在vue中也可以如此使用,只是页面显示不大协调,故写个通用的询问弹框比较好用。

1,单独组件方便调用 enquireDialog.vue   ui使用vuetify


   <template>
  <v-row justify="center">
    <v-dialog v-model="showConfirmDialog" persistent max-width="290" >
     <v-card>
        <v-card-title class="h5">{{confirmContent}}</v-card-title>
        <!-- <v-card-text >{{confirmContent}}</v-card-text> -->
        <v-card-actions>
          <v-spacer></v-spacer>
          <v-btn color="green darken-1" text @click="showConfirmDialog = false">取消</v-btn>
          <v-btn color="red darken-1" text @click="showConfirmDialog = false,$emit(parentMethod,parentData)">确认</v-btn>
        </v-card-actions>
      </v-card>
    </v-dialog>
  </v-row>
</template>

<script>
export default {
    name:'',
    data(){
        return{
            // deleteDialog:this.dialog
             showConfirmDialog:false,
            //  title: "操作提示",
             confirmContent:"是否确认删除?",
             parentMethod:null,//回调函数
             parentData:null,//回调函数的参数     
        }
    },
      
    },
    methods:{
      show(contents,cmethod,cdata){
        this.confirmContent=contents||"是否确认删除?";
        this.parentMethod=cmethod;
        this.parentData=cdata;
        this.showConfirmDialog=true;
        },
        hidden(){
          this.showConfirmDialog=false;
        }
    }
}
</script>>

2,父组件中调用

先引入子组件,可以在同一个页面多处使用互不干扰

<enquireDialog ref="controllDialog" @deleteType="deleteType" @deleteTalbe="deleteTable" ></enquireDialog>

//具体使用
<v-btn text small color="red" @click="$refs.controllDialog.show(null,'deleteType',type.id)">删除</v-btn>

<v-btn text small color="red" @click="$refs.controllDialog.show(null,'deleteTable',table.id)">删除</v-btn>



点击“删除”按钮便可弹出弹框

点击确认便可回调父组件中真正的删方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值