weui.js icon indicating copy to clipboard operation
weui.js copied to clipboard

weui的alert弹窗如何销毁

Open webstermobile opened this issue 4 years ago • 1 comments

alert以后,如果不手动点击确定,路由改变的时候alert弹窗还是存在

webstermobile avatar Apr 27 '20 08:04 webstermobile

我是这么解决的,用的是VUE,在router/index.js里加上这段:

router.beforeEach((to, from, next) => {
    //路由发生变化时强制关闭Weui弹窗
    let mask = document.getElementsByClassName("weui-mask")[0];
    if (mask) {
        let doms = ['picker', 'dialog', 'actionsheet'];
        for (let d of doms) {
            let dom = document.getElementsByClassName(`weui-${d}`)[0];
            if (dom) {
                let e = document.createEvent("MouseEvents");
                let a = document.getElementsByClassName(d == 'actionsheet' ? 'weui-mask' : `weui-${d}__btn`)[0]
                e.initEvent("click", true, true);
                a.dispatchEvent(e);
            }
        }
    }
    next();
});

参考地址

heii avatar Jul 07 '20 05:07 heii