Как сбросить форму redux во всплывающем окне?

#javascript #reactjs #reset #react-redux-form

#javascript #reactjs #Сброс #реагировать-redux-form

Вопрос:

У меня есть кнопка «addData», которая открывает modal с формой внутри, и сетка, при нажатии на строку которой открывается та же модель (с предварительно заполненными значениями).

Моя проблема в том, что после нажатия на строку, когда я нажимаю на кнопку «addData», форма должна быть сброшена, но она имеет предыдущее предварительно заполненное значение.

Обратите внимание, что я инициализирую значения формы с помощью реквизитов. В то время как кнопка «Добавить данные» находится в другом компоненте (имеет ли это какое-либо значение? потому что мои другие функции работают абсолютно нормально).

 this.props.initialize({ title: data[0].title, startdate: data[0]})
  

Приведенный ниже код у меня не работает,

 $(document).on("click", "#addData", function (e) {
   // dispatch(reset("myformName"));
   dispatch(initialize('myformName', {}));
});
  

Выдает ошибку «отправка не определена». Что я сделал не так?

Как я могу сбросить форму redux в модели? Не могу ли я выполнить сброс при событии нажатия кнопки?

Ответ №1:

Вы используете dispatch как отдельную функцию. dispatch это метод хранилища redux. Вам нужно будет либо import сохранить, либо использовать

store.dispatch(initialize('myformName', {}));

или лучше — используйте mapDispatchToProps и прикрепите action к addData клику. Использование jquery с react-redux — действительно плохая практика, и это один из примеров того, почему. Если у вас возникли проблемы с подключением mapDisatchToProps к вашему компоненту, опубликуйте код вашего компонента.