Vue 单页面应用 另辟蹊径监听物理返回事件

本文介绍了在Vue项目中使用离开守卫防止用户未保存修改即离开页面的应用场景及实现方式,包括具体代码示例。

最近公司有新的需求要使用单页面 进行开发,选来选去选择了VUE 因为路由管理起来比较的方便。于是乎开始边学边写。很多坑,

 

最近又有了新的需求 在android环境下 监听到用户点击物理返回事件, 网页应用就是有些麻烦  百度了很久。网上给的方法基本都是使用Xback.js  或者 通过监听“popstate”,并不能完美解决。无奈。只能找其它方法。。由于也是刚上手  对 vue 也不太熟悉。翻API,发现了“导航守卫”,于是乎发现了 “离开守卫”  具体代码如下:

beforeRouteLeave (to, from , next) {
  const answer = window.confirm('Do you really want to leave? you have unsaved changes!')
  if (answer) {
    next()
  } else {
    next(false)//可以通过在这里写逻辑来处理用户点了物理返回之后的操作
  }
}

离开守卫通常用来禁止用户在还未保存修改前突然离开。该导航可以通过 next(false) 来取消。

 

 

以上   自己记录一下 。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值