vue2.0 弹窗单独组件的开启关闭处理问题

vue2.0 弹窗单独组件的开启关闭处理问题

在某项目开发中有个需求将 element 弹窗组件单独写成一个组件进行复用
遇到问题,父传值默认open = false给子组件,点击事件开启父传值open= true,但是关闭时子组件需要open = false数值会改变,组件报错(vue的理念父传值给子,子不能修改数值)

解决方案:
通过 ref 获取子组件的事件进行组件内部操作改变数值
1.父组件名father.vue
2.子组件名children.vue
3.将子组件引入、注册、展示在父组件中
4.在子组件写一个开启弹窗方法,将弹窗组件开启的值改成true
showDialog(){
this.dialog = true
}
5.在父组件展示的子组件上加上 ref
6.在父组件的点击事件上调用子组件开启的方法 this.$refs.company.showDialog()
以上便可以成功的控制弹窗组件的开关了

//父页面father
<template>
	<div>
		<el-button type="text" size="small" @click="clickDetail">详情</el-button>
		<!-- 3.展示组件 -->
		<children
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值