У меня есть вопрос о реакции в настоящее время в моем приложении. Я хочу получить некоторые данные с сервера и установить значение по умолчанию для ввода, все операции выполняются в функции, но когда я пытаюсь установить состояние, равное внешнему виду функциикак реагирует, думает, что я присваиваю функцию состоянию в результате, когда каждое состояние изменения ввода обновляется функцией, игнорирующей фактическую типизацию, есть ли способ обойти это?
Вот код для части рендерингакомпонента:
{metaList["properties"] &&
metaList["properties"].map((item, idx) => (
<label key={idx} style={{ display: "block", marginBottom: "20px" }}>
{item.name + ":"}
<div style={{ display: "none" }}>
{this.findMeta()
? (this.state.properties[item.name] = this.findMeta())
: ""}
{this.state.properties[item.name]
? this.state.properties[item.name]
: (this.state.properties[item.name] = "")}
</div>
<input
name={item.name}
placeholder={item.name}
value={this.state.properties[item.name]}
onChange={this.handleInputChangeProperties}
style={{
marginLeft: "20px"
}}
/>
</label>
))
}
this.findMeta
- это функция, которую я пытаюсь вызвать, в ней нет ничего особенного, функция возвращает одну переменную в виде строки, чтобы заполнить поле.