0
点赞
收藏
分享

微信扫一扫

vue-router beforeRouteLeave 引发的问题

用户需求是当用户在创建商品时,点击了左侧菜单,做一个离开提醒‘是否确定离开?’。
如下实现:
但是,出现一个问题:用户点击左上角浏览器回退按钮时,这个弹出提醒就会闪现,立马消失。
方法一
路由换成history
方法二

 beforeRouteLeave(to: any, from: any, next: any) {
    if (from.name === 'orderCreateStep2') {
      setTimeout(() => {
        this.$confirm('是否放弃创建该订单?', '提示', {
          confirmButtonText: '是',
          cancelButtonText: '否'
        })
          .then(() => {
            localStorage.removeItem('refundOrderInfo')
            next()
          })
          .catch(() => {
            next(false)
          })
      }, 200)
    } else {
      next()
    }
  }
举报

相关推荐

Vue-router

[Vue]Vue-router

搞懂vue-router

vue-router路由

Vue-router学习

0 条评论