@Devero97

Как отображать разные страницы в одном динамическом роуте?

Что-то не могу найти в документации информации, как отображать в одном динамическом роуте разные страницы. У меня есть в папке pages/ динамический файл _slug.vue. я хотел бы, чтобы при запросе mydomen.ru/что-то Выводилась либо страница статьи, либо страница профиля. У меня нет категорий, и запроса соответственно я тоже не хочу лишнего делать в виде этого mydomen.ru/profile/Dmitry или mydomen.ru/post/privet . Как можно это реализовать в nuxt? Я нашёл только один выход. Использовать component и делать запрос на сервер и искать там по всей бд совпадение. И если оно нашлось, то выводить соответствующий компонент. Но для этого надо у каждого объекта (использую json ) иметь флаг к какому он типу подлежит. Либо это профиль либо статьи. Но это, мне кажется, не очень эффективно. Хотел бы советов. Спасибо.
  • Вопрос задан
  • 70 просмотров
Пригласить эксперта
Ответы на вопрос 2
nowm
@nowm
Лично моё мнение, вы изначально хотите делать неэффективную вещь. Профита от такого подхода нет вообще никакого, потому что в любом случае придётся обращаться к нескольким таблицам, чтобы понять, какой тип контента выводить. Лишние запросы к БД — замедление работы сайта. Опять же, рано или поздно, у вас проявятся неоднозначности, и вместо профиля пользователя вы будете видеть страницу статьи, либо вам придётся дополнительно делать страницы разрешения неоднозначностей, как это происходит в википедии, например.

Это лишний геморрой, это вам не поможет упростить вещи, и это значит, что вы будете тратить лишнее время на поддержку ресурса.
Ответ написан
delphinpro
@delphinpro
frontend developer
Сделать два роута вообще не вариант? И почему?

/profile/:username
/post/:slug
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы