您的位置:首页 > Web前端 > Vue.js

vue里mint-ui的picker弹窗的穿透效果 禁止

2019-03-16 16:24 337 查看
版权声明:转载请注明出处,谢谢 https://blog.csdn.net/weixin_43953710/article/details/88600323

解决思路
在弹出组件的时候,阻止body滑动事件;弹回的时候,开启body滑动事件

html

<mt-datetime-picker ref="picker"
type="date"
:endDate="endDate"
:startDate="startDate"
v-model="pickerValue"
@confirm="handleConfirm"
@visible-change = "visbleChange">

data () {

handler: function(e){
e.preventDefault()
},
}

watch: {
value(val) {
this.currentValue = val;
},

rims() {
this.generateSlots();
},

visible(val) {
this.$emit('visible-change', val);
}
},

mehtods: {
/*解决页面层级相互影响滑动的问题*/
//打开的时候和关闭的时候
closeTouch () {
document.getElementsByTagName('body')[0].addEventListener('touchmove', this.handler, {passive:false})//阻止默认事件
},
openTouch () {
document.getElementsByTagName('body')[0].removeEventListener('touchmove', this.handler, {passive:false})//打开默认事件
},
visbleChange (val) {
if(val) {
this.closeTouch()
} else {
this.openTouch()
}
},
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: