Ручной API для inline CRUD в Next.js часто выглядит как “нормальная инженерия”. Пока не появляется второй экран, третья форма и сценарий удаления без перезагрузки.
Тогда начинается классика: route handler, fetch с клиента, отдельные pending/error/success, синхронизация после ответа, обработка Enter, blur, cancel. И всё это — не про данные, а про обвязку.
Server Actions здесь выигрывают не “магией”, а сокращением числа слоёв. Форма вызывает action напрямую, сервер получает FormData, возвращает состояние, а UI держится на одном цикле: state → formAction → isPending. Для create/rename/delete в App Router это обычно более предсказуемо, чем ручной API с тонной клиентского кода.
Контрарный вывод простой: если задача — не публичный API, а write-flow внутри продукта, лишний endpoint часто добавляет не контроль, а шум. 📉
Проверять стоит не по вкусу команды, а по ROI: сколько форм, сколько состояний, сколько мест, где можно сломать синхронизацию.
Burzh SEO
@BurzhSEOPro
Ручной API для inline CRUD в Next.js часто выглядит как “нормальная инженерия”. Пока не появляется второй экра
Этот пост опубликован в Telegram-канале Burzh SEO. Подписаться можно по ссылке: @BurzhSEOPro.