2.4.11
windows/mac chrome
2.5.22
https://jsfiddle.net/mmx38qxw/ 不是bug,木有链接哦
任意界面中显示一个dialog,
点击浏览器的回退按钮,从router的beforeEach钩子中获取当前展示的dialog
关闭改dialog
关闭dialog
dialog蒙版未消失,依然罩在整个界面上
今天刚好遇到这个问题,发现直接操作dom会出问题
今天刚好遇到这个问题,发现直接操作dom会出问题
哈哈,我也是,操作dom能把dialog强制关掉,但是没法再打开。厉害了
今天刚好遇到这个问题,发现直接操作dom会出问题
你那边解决了,麻烦给说一下😀,这个问题我刚提没几小时,在线等状态。。。
今天刚好遇到这个问题,发现直接操作dom会出问题
你那边解决了,麻烦给说一下😀,这个问题我刚提没几小时,在线等状态。。。
手动获取dom,然后调用dom的click方法解决了。我是在vue-router的beforeEach里调用。注意要判断一下弹框的display,不然可能会报错。
function resetDialog() {
let modal = document.querySelector('.v-modal');
if(modal){
modal.click();
}
let dialog = document.querySelector('.el-dialog__wrapper');
if(dialog){
let result = window.getComputedStyle(dialog,null).getPropertyValue("display");
if(result !== 'none'){
let closeButton = document.querySelector('.el-dialog__close.el-icon.el-icon-close');
if(closeButton){
closeButton.click();
}
}
}
}
今天刚好遇到这个问题,发现直接操作dom会出问题
你那边解决了,麻烦给说一下😀,这个问题我刚提没几小时,在线等状态。。。
手动获取dom,然后调用dom的click方法解决了。我是在vue-router的beforeEach里调用。注意要判断一下弹框的display,不然可能会报错。
function resetDialog() {
let modal = document.querySelector('.v-modal');
if(modal){
modal.click();
}
let dialog = document.querySelector('.el-dialog__wrapper');
if(dialog){
let result = window.getComputedStyle(dialog,null).getPropertyValue("display");
if(result !== 'none'){
let closeButton = document.querySelector('.el-dialog__close.el-icon.el-icon-close');
if(closeButton){
closeButton.click();
}
}
}
}
66666666,给你点赞,dom操作关闭按钮,这个思路好。一开始我就想着操作dialog组件去了😢
这个 dialog 不在 router-view 中吧。还有一种思路是将 dialog 封装成一个 service,类似这个issue #12708
这什么辣鸡组件,关个弹框 还要去操作DOM
Most helpful comment
这什么辣鸡组件,关个弹框 还要去操作DOM