zoukankan      html  css  js  c++  java
  • vue router拦截器的简单使用

    之前,为了实现router跳转的每个页面的url上都带上addressCode,然后用了一下router拦截器,很好用,当然也可以专门封装一个方法来实现(跳转的页面上带有addressCode),不过还是感觉router拦截器比较省事。

    router拦截器就是在路由跳转前后,做一些事情,相当于一个钩子函数。

    下面说一下使用方法:

    1、在main.js里  引入router

    import router from "./router/router";

    2、要在 vue实例前写入

    //注册一个全局前置守卫,确保要调用 next 方法,否则钩子就不会被 resolved
    router.beforeEach((to, from, next) => {
      //路由切换时,如果没有就添加,有就跳过执行,添加固定参数
      if (!to.query.addressCode) {
          //准备一个跳转的query对象
          let query = to.query
          query.addressCode = tool.getAddressCode();//是一个封装好的获取addressCode的方法
          alert.eduToast('没'+query.addressCode,6000);//调试代码
          next({
            path: to.path,
            query: query
          })
      } else {
          if (to.path !== window.location.pathname) {
            // 此处不可使用location.replace
              window.location.assign(to.fullPath)
            } else {
              next()
            }
          alert.eduToast('有',6000);//调试代码
      }
    })
  • 相关阅读:
    C语言程序设计II—第六周教学
    第一次结对编程情况反馈
    C语言程序设计II—第五周教学
    C语言程序设计II—第四周教学
    放缩
    切线垂直
    指数为对数时取对数
    整体运算
    数列求通项+离散数列单调性判断
    整体运算+求零点
  • 原文地址:https://www.cnblogs.com/fqh123/p/10360894.html
Copyright © 2011-2022 走看看