Vue 2.x - Vue Router - 获取来源页面的路由

1,089 阅读1分钟

需求

进入当前页面,获取来源页面的路由信息

问题

在 beforeRouteEnter 内部有来源页面的路由信息,但无法获取当前实例的 this、方法、变量等。

解决方法

分析:beforeRouteEnter 是页面进入之前调用,所以取不到当前实例。

export default {
  data() {
    return {
      targetPath: ""
    }
  },
  beforeRouteEnter (to, from, next) {
  	// 此处无法通过 this 访问当前实例
    next(vm=> {
      // 此处可通过 `vm` 访问当前组件实例
      vm.targetPath = to.params.fullPath
    })
  }
}