Я сталкиваюсь с глупой проблемой, когда значение по умолчанию не отображается в форме.
В моем приложении, когда пользователь вошел в систему, форма будет автоматически заполнена некоторыми деталями, поскольку она будет извлекать данные из сохраненной пользовательской информации, передаваемой в мой компонент через реквизиты.
В этом случае мой уже выбранный «Пол», т.е. значение по умолчанию не отображается при визуализации компонента.
В то же время, когда я передаю то же значение, что и в жестко запрограммированном виде, оно прекрасно работает.
Я получаю 'defaultValue' в 'renderGenderDropDown' как 'Male' (так же, как я сохранял в myValue const).
Но myValue const работает, defaultValue - нет.
И да, мой компонент используется во многих других компонентах и прекрасно работает. Это в основном, делает '' из 'React'.
Что мне нужно, чтобы это исправить?
Код:
renderGender() {
const { options, data } = this.props;
const gender = get(data, 'gender');
const defaultValue = gender ? capitalize(gender) : gender;
const fieldName = 'gender';
return this.renderGenderDropDown(fieldName, defaultValue, prefixOptions);
}
renderGenderDropDown(fieldName, defaultValue, options) {
const { configuration, id, validations } = this.props;
const myValue = 'Male';
return <AppDropDown
label={getLabel(fieldName, configuration, validations, 'gender')}
options={dropdownOptions}
defaultValue={myValue}
//defaultValue={defaultValue}
key={fieldName}
className={fieldName}
disabled={false}
id={id}
onChange={this.onGenderChange(this[fieldName])}
/>
}