vue - 使用$on和$emit相结合关闭自定义弹框

可以使用$on来监听当前自定义组件上的的自定义事件,然后通过$emit来触发这个事件

1、utils文件:

    import Vue from 'vue';
    export default new Vue;

2、自定义弹框:

    import utils from "../../libs/Utils/utils";
    
    mounted() {
        utils.$on('closeSelf', () => {
            let timer = setTimeout(() => {
    			this.isShow = false;  // 控制弹框的显示与否
                this.$emit("close", this.isShow);
            }, 500);
        })
    }

3、在点击手机上的返回按钮后返回到的那个页面(若多个页面都用到弹框可以直接在首页)写入以下代码

    import utils from "../../libs/Utils/utils";
    
    mounted() {
    	 utils.$emit('closeSelf');
    }
发布了44 篇原创文章 · 获赞 8 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/LiaoFengJi/article/details/95181722