Не найдено совпадения для местоположения с путем — Vue 3 Vue Маршрутизатор 4

#vue-component #vuejs3 #vue-router4

Вопрос:

Мне нужно динамически создавать маршруты в приложении Vue. Я создал базовый компонент по этой ссылке на песочницу кода.

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

В моем приложении более высокого масштаба возвращается ошибка (не отображается в безопасной среде, потому что определена страница «Не найден»):

 [Vue Router warn]: No match found for location with path "/"
 

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

Я пытался использовать навигационные системы, но мне пока не удалось решить эту проблему.

Дайте мне знать, что я делаю неправильно и как я могу обойти решение этой проблемы, пожалуйста. Мы будем очень признательны за любую помощь.

Заранее спасибо.

Доброго дня всем вам. 🙂

Ответ №1:

Вам необходимо запустить новую навигацию после добавления маршрута: https://next.router.vuejs.org/guide/advanced/dynamic-routing.html#adding-routes