Комментарии 8
Хммм, тут сравнение тёплого с круглым. В Нексте с версии 9.3 тоже есть полная поддержка SSG как опции — см. их блог. В статье это упоминается только к концу, что выглядит не очень объективно.
В отличие от Гатсби, в Нексте разработчик может выбирать, какую страницу рендерить на сервере, а какую пререндерить во время билда. Это самый гибкий и самый оптимальный подход, возможный в принципе. Не слышал, чтобы Гатсби поддерживал SSR или апи-маршруты, которое потом ещё можно и в отдельные лямды задеплоить при желании.
Сам я на Гатсби писал мало, в основном в последние года два все проекты делал на Нексте. При этом общался с контрактниками-фронтендерами и собирал мнения о двух движках. Несколько раз слышал, что как раз-таки из-за своих плагинов Гатсби превращается в абузу на каком-то этапе сложности проекта, и с дальнейшим ростом ситуация становится всё хуже. В Нексте меньше «магии», поэтому в «потолок» упереться с ним гораздо сложнее.
Полностью поддерживаю. Gatsby хорош, но next.js все то же, но лучше. А еще next.js теперь пилится вместе с одной из команд браузера Chrome, что уже дало плоды в плане повышения перфоманса в одном из последних релизов.
Скажите, пожалуйста, у next.js есть какие-то преимущества перед, скажем, Hugo при создании статических веб-сайтов? Никакой серверной части, просто статика и client-side JS.
Не пользовался Хуго, поэтому детального сравнения дать не могу.
На мой взгляд, выбор движка, который только поддерживает генерацию статики — опасная затея в принципе. Сегодня вам этого достаточно, а завтра условия проекта слегка поменялись, и в коде начались жестокие костыли.
Некст помогает избежать костылей в принципе. Нужно только SSG? Пожалуйста! На какой-то одной странице понадобился SSR для отображения чего-то в реальном времени? Без проблем. SSR теперь надо на всех страницах? Вот. SSR больше не нужен? Отлично. Апи ещё сказали прикрутить? Пять минут.
Кроме Некста знаю ещё Накст (nuxtjs.org), который, кажется, даёт похожую гибридность. Если существуют ещё и другие многорежимные движки, с удовольствием присмотрюсь!
Нет, ну правда же, вот это:
Для того чтобы оснастить проект фавиконами, которые поддерживали бы все доступные платформы (а в этом деле до сих пор царит ужасный беспорядок), мне даже не пришлось ничего делать, так как поддержка фавиконов — это часть плагина, ответственного за манифест. Это очень удобно!
Это как сравнивать WordPress и PHP, и говорить мол в вордпрессе есть UI для загрузки картинок, а в голом пхп нет.
Как Gatsby обошёл Next.js