1.遇到的问题:使用mint-ui的弹窗选择时底部页面会出现滚动效果(仅出现在苹果手机,安卓手机,pc端正常)
2.问题原因:滚动穿透,这是啥,我也不懂
3.解决方式:弹出层打开的时候禁止body的滑动事件,弹出层关闭恢复body的滑动事件
对应事件名称是visible-change,代码里面有,文档里面居然没说明!
代码如下:
//对应的组件上面添加事件
<mt-datetime-picker v-model="value" @confirm="handleConfirm" @visible-change="handleValueChange">
</mt-datetime-picker>
//Vue数据变量区域
data(){
handler:function(e){e.preventDefault();}
},
//Vue函数方法区域
methods:{
handleValueChange(val){
if(val) {
document.getElementsByTagName('body')[0].addEventListener('touchmove', this.handler, { passive: false });
}else{
document.getElementsByTagName('body')[0].removeEventListener('touchmove', this.handler, { passive: false }); }}}
参考文档:
https://blog.csdn.net/amyleeYMY/article/details/82588477



