Если у вас в Next.js есть inline CRUD, ручной API быстро превращается в лишнюю обвязку.
Схема знакомая: route handler, fetch с клиента, свои pending/error/success, отдельно Enter, blur, Escape, закрытие редактора. На одном поле это терпимо. На создании, переименовании, удалении и нескольких формах на экране — начинает течь не бизнес-логика, а инфраструктура.
Server Actions режут эту цепочку.
Вместо: форма → клиентский submit → endpoint → ответ → ручная синхронизация UI
Получаем: форма → action → серверная функция → типизированное состояние → UI вокруг `state / formAction / isPending`
Что это даёт в лоб:
- меньше промежуточных слоёв;
- предсказуемее обработка create / rename / delete;
- проще inline-редактирование без отдельного API на каждую мелочь;
- меньше шансов развести хаос в состоянии формы.
Если у вас много мелких write-операций на одном экране — ручной API уже не выглядит «чище». Он просто размазывает стоимость по коду. ⚙️
Agency Pricing Lab
@AgencyPricingPro
Если у вас в Next.js есть inline CRUD, ручной API быстро превращается в лишнюю обвязку.
Этот пост опубликован в Telegram-канале Agency Pricing Lab. Подписаться можно по ссылке: @AgencyPricingPro.