如题,在我封装自定义弹窗组件的时候
出现了冒泡问题
vue很简单解决冒泡事件,加个@click.stop=""就可以了

出现问题

  • 下图是假设我的页面有内容是绑定了点击事件

  • 实际情况应该是一些详情页面的点击事件做登录拦截

  • 如:点赞等操作。
    原功能动图

  • 登录弹窗出来后,点击弹窗组件会导致点击到页面内容
    冒泡问题动图

当然,给蒙板取消按钮的事件加上 .stop即可阻止冒泡
但是封装小程序的登录弹窗组件的时候
会发现确认登陆的按钮不是点击事件

  • 尝试给小程序登录事件加stop,发现是无效的
    使用stop失败代码图

解决办法

  • 给整个组件绑定一个空事件,并阻止冒泡
    加空事件代码图
<div @click.stop="function(){}">
	...
</div>

解决后效果图

解决后效果动图


如有建议和疑问可联系
QQ:1017386624
邮箱:1017386624@qq.com

Logo

前往低代码交流专区

更多推荐