需求:显示带蒙层组件时,组件内容滑动的同时禁止主页面
思路:分别在组件加载和销毁时禁用和恢复窗口的touchmove事件
mounted() {
// 加载组件时禁止主页面的滑动
let m = function(e) {
e.preventDefault();
};
document.body.style.overflow = "hidden";
document.addEventListener("touchmove", m, { passive: false }); //禁止页面滑动
},
destroyed() {
// 组件销毁时恢复页面的滑动
let m = function(e) {
e.preventDefault();
};
document.body.style.overflow = ""; //出现滚动条
document.removeEventListener("touchmove", m, { passive: true });
}