Ну вообще-то при обновлении страницы store очищается. Если же у вас redux-persist используется, то просто редюсер с ошибками в игнор занести, чтобы не восстанавливался.
CryNet, да какая разница как вы работаете с css в реакте, в любом случае их не нужно использовать. Если вам по какой-то причине нужно обратиться к dom элементу, например, чтобы сделать фокус на инпуте программно или вам нужен неконтролируемый компонент, то следует использовать ref'ы, во всех остальных случаях вы просто манипулируете стейтом/пропами из компонентов.
CryNet, в вашем случае достаточно изменить функцию addToCard, чтобы она принимала не event, а конкретный item.name и item.price. Ну и по хорошему сделать отдельный компонент для карточки товара и передавать в него уже в качестве пропсов item и addToCard функцию
CryNet, так вы определитель для начала, вам просто надо получить доступ к dom элементу в реакте, но код у вас уже такой есть, или все таки сделать как правильно? Если правильно, тогда переделывайте на нормальный компонентный подход, прокидывайте нужные пропсы в компонент и по клику передавайте что нужно из компонента. А может у вас так и есть, а вы просто по старинке пытаетесь сделать как умеете, но мы то откуда знаем.
Большие формы свободно делаются с помощью Formik + валидация через Yup, создаете отдельные компоненты с нужными инпутами, прокидываете нужные values из объекта формика и вперед.
Работы объективно очень базовые и слабые, похожие на копипаст, работа с git вообще никакая, в коммиты влетает все подряд со странными наименованиями, например, названия коммитов "update #2" или "clean up", что это? почему? Сделайте нормальное полноценное приложение сами, да тот же todo с созданием кастомных категорий, переименованием задач/категорий, таймером выполнения с напоминалкой, а не одну страницу с выводом данных из стора/стейта. Ну и спамьте везде, кто-нибудь может вызовется вас взять, но сейчас таких как вы тысячи на рынке, надо чем-то хоть немного выделяться, чтобы попасть хотя бы на собес.
Там же все пропы указаны
Передаете value для выбранной даты, по onChange меняете value, при нажатии иконки очистки поля будет вызываться onChange с пустой строкой на выходе или отлавливайте onClear на очистку.
1. Почему вы делаете сравнение в if через запятую? В вашем случае всегда будет возвращаться результат последнего сравнения.
2. Вы правда считаете, что пользователь будет нажимать две кнопки одновременно?
Вы явно надумали что-то от себя. Здесь скорее всего надо сохранять значение верхней кнопки по ее нажатию (+ желательно выделять активную кнопку, привыкайте делать интерфейс понятным для пользователя).
А при нажатии кнопки слева уже смотреть какая верхняя активна и выводить в зависимости от этого нужное число.