Vue js, как установить путь к маршрутизатору по умолчанию для навигации при загрузке веб-приложения - PullRequest
0 голосов
/ 30 августа 2018

У меня есть проект, это маршрутизация, как это.

1. /
2. admin-panel/:type
    2.1 create-user
    2.2 update-user
    2.3 etc...
3. forgot password

Моя проблема в том, что если кто-то подходит к admin-panel/:type, он должен направить пользователя-создателя по умолчанию.

Я использовал хитрый способ для создания корневого маршрута под admin-panel/:type

как это

2.admin-panel
 2.1 /
 2.2 create-user

Но на этот раз это не работает, поскольку админ-панель имеет параметр с именем type .

Я хочу, чтобы, если кто-то пришел на admin-panel, он должен был направить на create-user по умолчанию. Как мне этого добиться?

Ответы [ 2 ]

0 голосов
/ 30 августа 2018

Лично для этих случаев я использую хук afterEach в файле маршрутов:

router.afterEach((to, from) => {
  let exist = false

  for (let i in this.a.options.routes) {
    if (this.a.options.routes[i].name === to.name) {
      exist = true
    }
  }

  if (!exist) {
    this.a.push({
      name: from.name
    })
  }
})

Вы можете использовать другой хук как beforeEach (я не помню точно, почему мы используем после). По сути, цель состоит в том, чтобы пройти по списку маршрутов, если он не существует, он возвращает вас к маршруту, на котором вы находитесь в данный момент, что на самом деле означает, что вы не замечаете никаких изменений, он просто не меняет маршрут.

0 голосов
/ 30 августа 2018

Я должен добавить свойство перенаправления к маршруту admin-panel.

...