【问题标题】:how to update root data in vue router beforeEach如何在vue路由器beforeEach更新根数据
【发布时间】:2022-01-13 23:16:11
【问题描述】:

我正在使用 Vue 路由器应用程序开发 VueJS2。我可以从路由器实例console.log(router.app.authorized) or console.log('router', router.app.$root.authorized) beforeEach 钩子访问根数据。但我需要从 beforeEach 实例更新根数据。 当我更新此代码时,例如:router.app.authorized = true or router.app.$root.authorized = true 无法更新根数据。 也许我的方法是完全错误的或错误的东西。在这种情况下如何解决这个问题

【问题讨论】:

标签: vue.js vuejs2 vue-router


【解决方案1】:

这是我的代码,它对我有用。

// define router
const createRouter = () => new Router({
  routes: constantRoutes,
  isAddDynamicMenuRoutes: false
})
// beforeEach 
if (router.options.isAddDynamicMenuRoutes) {
  next()
} else {
  router.options.isAddDynamicMenuRoutes = true
  ...
  next({ ...to, replace: true })
}

【讨论】:

  • 但我想在我的代码中更新 $root.$data。在路由器更新之前,每个实例路由器页面控制台都会显示更新的数据,但是当看到 VueDevTool 根数据时,则可以看到无法更新。
猜你喜欢
  • 2019-05-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-27
  • 1970-01-01
  • 2022-09-23
  • 1970-01-01
  • 2018-07-29
相关资源
最近更新 更多