Я создаю приложение с помощью React Native. В настоящее время у меня проблема с передачей значения в реквизит действия.
У меня есть вызов действия обновления формы в методе onChangeText компонента TextInput. Когда текст изменяется, я изменяю текст и передаю его действию обновления, например так:
onChangeText={value => {
let frequency = value + ' ' + this.state.frequencyTerm;
console.log(frequency) // this is not undefined but expected value
this.props.reminderFormUpdate({prop: 'frequency', frequency});
}
Однако, когда я проверяю значение, переданное функции remderFormUpdate (простой оператор console.log), он говорит, что значение не определено. Я также записал значение частоты перед передачей в действие, и это правильное значение. Так почему же это происходит?
Я обнаружил, что не изменяю значение, полученное из TextInput, и меняю строку на:
this.props.reminderFormUpdate({prop: 'frequency', value});
значение, полученное действием больше не является неопределенным, но, очевидно, это не значение, на которое я хочу установить свою частоту. Действие также отлично работает для других объектов, когда значение не видоизменяется перед передачей в функцию, но почему я не могу изменить значение?
Вот моя функция RemderFormUpdate (функция работает, как и ожидалось, с другими реквизитами, поэтому я не думаю, что это проблема):
export const reminderFormUpdate = ({prop, value}) => {
return {
type: 'REMINDER_FORM_UPDATE',
payload: {prop, value},
};
};
Заранее спасибо за вашу помощь :-)