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阻止默认事件
}
上一篇下一篇

猜你喜欢

热点阅读