Приложение Vue автоматически меняет положение # в URL при нажатии на ссылку кнопки - PullRequest
1 голос
/ 19 апреля 2019

У меня вопрос к маршрутизатору vue, я работаю над пользовательской библиотекой vue, большая часть кода которой уже была создана до меня.Мой вопрос связан с попыткой заставить страницу использовать кнопку «Назад» на странице, которая работает в процессе регистрации (она работает на всех других страницах, кроме этой одной конкретной страницы).Я не совсем уверен, что именно происходит с тем, почему он ведет себя определенным образом с «#», что, я полагаю, будет проблемой:

Поток приложения должен идти следующим образом:

  1. http://localhost:8080/#/events, при нажатии кнопки «Продолжить» происходит переход к следующей странице (странице продукта)

  2. http://localhost:8080/#/product,нажатие кнопки «Продолжить» приводит к переходу на следующую страницу (страницу обновления)

  3. http://localhost:8080/upgrade#/, нажатие кнопки «Продолжить» приводит к переходу на следующую страницу (страницу оплаты)

Каждая страница имеет кнопку возврата на странице, чтобы вернуться к предыдущей.Переходя от '/ upgrade # /' и нажимая кнопку "Назад", приложение дает мне ссылку на пустую страницу с этим URL:

http://localhost:8080/upgrade#/product

Я не уверен, когдамы находимся на странице:

http://localhost:8080/#/product

и нажимаем кнопку «Продолжить», почему «#» перемещается после «/upgrade» .

Это нашметод, которым мы пользуемся для смены страниц:

changeRoute() {
      this.$router.push("/product");
    }

Надеюсь, я достаточно подробно объяснил свой вопрос!Спасибо заранее!

1 Ответ

0 голосов
/ 19 апреля 2019

То, что вы хотите, это поместить режим vue-router в историю .

const router = new VueRouter({
  mode: 'history',
  routes: [...]
})

Режимом по умолчанию для vue-router является режим хеширования, поэтому вы видите такое поведение.

...