Кнопка «В корзину» в серверном компоненте не компилируется
Проект на App Router. Страница товара — серверный компонент, который читает товар из базы. Разработчик добавил в неё кнопку:
<button onClick={() => addToCart(product.id)}>В корзину</button>
Сборка падает с ошибкой о том, что обработчики событий нельзя передавать из серверного компонента. Как правильно?
- Вынести кнопку в клиентский компонент с "use client" и отрендерить его на странице
- Добавить "use client" в начало всей страницы товара
- Заменить onClick на атрибут onclick строкой
- Обернуть кнопку в Suspense, чтобы обработчик подключился позже
