Именованные маршруты
При создании маршрута вы можете опционально задать ему name:
const routes = [
{
path: '/user/:username',
name: 'profile',
component: User
},
]При таком подходе можно использовать name вместо path при передаче параметра to в <router-link>:
<router-link :to="{ name: 'profile', params: { username: 'erina' } }">
User profile
</router-link>В приведенном выше примере будет создана ссылка на /user/erina.
Использование name имеет определенные преимущества:
- Никаких жестко заданных URL-адресов.
- Автоматическое кодирование
params. - Избегание опечаток в URL.
- Обход ранжирования путей, например, для отображения маршрута с более низким приоритетом, который соответствует тому же пути.
Каждое имя должно быть уникальным для всех маршрутов. Если вы добавите одно и то же имя в несколько маршрутов, маршрутизатор сохранит только последний из них. Подробнее об этом можно прочитать в разделе Динамическая маршрутизация.
Есть и другие части Vue Router, которым можно передать описание пути, например, методы router.push() и router.replace(). Более подробно мы рассмотрим эти методы в руководстве по программной навигации. Как и входной параметр to, эти методы также поддерживают передачу местоположения при помощи name:
router.push({ name: 'profile', params: { username: 'erina' } })