vue项目监听安卓手机物理返回键

1、挂载完成后,判断浏览器是否支持popstate

mounted(){

  if (window.history && window.history.pushState) {

    history.pushState(null, null, document.URL);

    window.addEventListener('popstate', this.fun, false);//false阻止默认事件

  }

},

2、页面销毁时,取消监听。否则其他vue路由页面也会被监听 (destroyed钩子在使用 keep-alive就不会执行)在开发过程中遇到一个问题,每次返回只在第一次有效,后面就没有效果了,于是在每次打开弹框的时候动态绑定事件,在返回时解除绑定,问题就解决了。

destroyed(){

  window.removeEventListener('popstate', this.fun, false);//false阻止默认事件

},

3、将监听操作写在methods里面,removeEventListener取消监听内容必须跟开启监听保持一致,所以函数拿到methods里面写

methods:{

fun(){

console.log("监听到了");

}

}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容