@223606322
начинающий web-разработчик

Как определить грань межу использованием nuxt и использованием привычных решений вроде express для backend-части?

Только начинаю изучать nuxt и не до конца понимаю, можно ли полностью backend огранизовать в nuxt?
Условно связь с БД (запись, чтение и т.д. данных), создание JWT-токенов и логики регистрации, и т.д.
Кто-нибудь разрабатывает боевые проекты на nuxt? Как у вас реашется данный вопрос?
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
neuotq
@neuotq
Прокрастинация
Изначально nuxtjs(и его вдохновитель nextjs) - фреймворки, которые представляют собой готовый рецепт и набор правил для построения приложений на библиотеке Vue.js или React. Хотя можно обойтись без них и строить приложения как душе угодно, но удобнее иметь набор правил в сообществе и в команде. В процессе разработки фронтенд-приложений постепенно появляется необходимость в различных оптимизациях, в том числе в скорости и SEO, поэтому активно развивается бэкэнд для фронтенда. Он используется в основном для дополнительного кеширования и рендеринга на стороне сервера.

Конечно, вы можете подключаться к базе данных для получения информации. Для этого есть специализированные плагины и практики(можно прям гуглить nuxt 3 mysql). В целом, у вас есть доступ ко всем возможностям Node.js, так что всё в ваших руках. Чаще всего используются какие-либо ORM (Object-Relational Mapping), которые облегчают доступ к БД, убирая рутину на себя и предоставляя удобный доступ к данным. Например, Prisma.

В целом, обычно в Nuxt.js и подобных фреймворках напрямую с БД не работают, так как это ломает классическую архитектуру подобных приложений с разделением логики, масштабирования и т.п. Так что даже если на бэкенде Node.js, то это отдельные независимые сервисы, которые предоставляют каким-либо образом доступ к подготовленным данным из БД (например через REST API), а уже приложение на Next.js обращается к нему и в своей бэкенд-части и через браузер.

Резюмируя: Nuxt - для отображения интерфейса/фронтенда, даже при использовании рендринга на стороне сервера, получение обновление данных через API(REST/GraphQL/... ).
Express/Nest(что угодно другое бэкэндерское) - ядро бизнес логики, обработка данных, работа с БД, постороение API и тп.
Это если кратко, а так гуглите про архитектуру приложений, информации море, тема обширная.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@aleksejjjjj
Nuxt это только и исключительно фронтенд. Никакого бекенда там нет.

Что-то типа я выбрал Bootstrap 5 для сайта, как на нём сделать запрос к БД?
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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