Я сохраняю данные формы в ответ на хранилище redux, и каждый ввод работает нормально, кроме флажка. Проблема в том, что флажок никогда не показывает отметку, но redux-logger показывает, что состояние флажка было изменено в состоянии. Ниже мой флажок
<Control.checkbox model="agree" name="agree"
className="form-check-input"
changeAction={this.changeAction} defaultChecked={this.props.fields.agree}
updateOn="toggle"
/> {' '}
<strong>May we contact you?</strong>
this.props.fields.agree
дает текущий статус tken флажка из хранилища redux. Ниже приведен редуктор:
const InitialFeedback={
firstname: 'Vipul',
lastname: 'Tyagi',
telnum: '12345',
email: 'vipultyagi629@gmail.com',
agree: true,
contactType: 'Email',
message: 'Hello'
};
export const formsData=(state=InitialFeedback,action)=>{
switch(action.type){
case 'CHANGE_FIELD':
return {...state, [action.payload.name]: action.payload.value};
default:
return state
}
}
Ниже приведен метод changeAction
:
changeAction(model, value){
console.log(typeof(value));
this.props.dispatch({type:'CHANGE_FIELD',payload:{name: model, value: value}});
}
Флажок действительно реагирует на галочку, но не показывает галочку. Какую ошибку я делаю?
Пожалуйста, помогите мне найти проблему !!
РЕДАКТИРОВАТЬ Я только что проверил, что независимо от начального состояния флажка, он всегда остается тем же. Я имею в виду, что если изначально в магазине я установил согласие на true, тогда флажок начинает показывать отметку, но при нажатии на флажок отметка не исчезает. То же самое и в случае, когда начальное состояние ложно.