vant框架sku组件未关闭导致页面无法正常滚动
2020-09-08 本文已影响0人
塔塔七
问题
由于页面物理键返回时sku没有关闭,导致所有页面无法正常滚动
处理方案
监听物理返回键自定义返回方法(ts写法)
public mounted() {
const win: any = window;
// 如果支持 popstate 一般移动端都支持了
if (window.history && window.history.pushState) {
// 往历史记录里面添加一条新的当前页面的url
history.pushState(null, null as any, document.URL);
// 给 popstate 绑定一个方法 监听页面刷新
window.addEventListener("popstate", this.backChange, false); // false阻止默认事件
}
}
private backChange() {
this.skuShow = false;
this.$router.back();
}
//页面销毁前阻止默认事件,以防影响其他页面
destroyed() {
window.removeEventListener("popstate", this.backChange, false); //false阻止默认事件
}