Как правильней сделать роут vue-router?

При работе с vue-roter столкнулась с проблеммой
есть вот такой роут
{
    path: "/news/:slug",
    name: "News",
    component: () => import( /* webpackChunkName: "promo" */ '../pages/News.vue'),
  }

с бэка приходит json такого типа
{
"url": "/news/eksklyuzivy",
    "name": "Эксклюзивы",
    "type": 2,
    "icon": null,
    "slug": "article/eksklyuzivy"
},

делаю router link вот таким способом
<router-link
   :to="{
             name: 'News',
            params: { slug: 'article/eksklyuzivy' },
         }">Новини</router-link>

но на выходе слеш превращается в %2F и url становится вот таким news/article%2Feksklyuzivy
как в таком случае правильней поступить
попросить чтобы бэк отдавал слаг без article и добавить его в сам роут или же переделать роутер линк на вот такой вариант
<router-link
          :to="{
                  path: '/article/eksklyuzivy',
                 }">Новини</router-link>

заранее спасибо
  • Вопрос задан
  • 99 просмотров
Пригласить эксперта
Ответы на вопрос 1
Aetae
@Aetae Куратор тега Vue.js
Тлен
Все именованные параметры экранируются. Если article не несёт никакого практического смыла - то логично её просто выкинуть.

Однако если очень нужно, можно делать так: path: "/news/*", - звёздочка исключение и не экранируется.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы