首页  >  问答  >  正文

javascript - vue router 怎么实现某个页面禁止浏览器回退?

我写的是vue 单页应用 a>b>c 登录成功后 显示d页面 我 想实现d页面浏览器后退按钮失效 请问怎么实现 查了些用路由的全局钩子 我现在用的是router hash模式

给我你的怀抱给我你的怀抱2669 天前1404

全部回复(3)我来回复

  • 滿天的星座

    滿天的星座2017-06-30 09:59:27

    可以用router.replace(location) 它不会向 history 添加新记录,替换掉当前的 history 记录。

    回复
    0
  • PHP中文网

    PHP中文网2017-06-30 09:59:27

    案例链接

    //replace
    <router-link to="/D" replace>Go to D</router-link>
    or
    router.replace('D')

    回复
    0
  • 三叔

    三叔2017-06-30 09:59:27

    用组件内的钩子。

    beforeRouteEnter (to, from, next) {
      next(vm => {
        // 通过 `vm` 访问组件实例
      })
    }

    你可以在 beforeRouteLeave 中直接访问 this。这个 leave 钩子通常用来禁止用户在还未保存修改前突然离开。可以通过 next(false) 来取消导航。
    来自文档: https://router.vuejs.org/zh-c...

    回复
    0
  • 取消回复