Я пытаюсь отобразить некоторые элементы пользовательского интерфейса, чтобы уменьшить код, но мне также нужно передавать реквизиты. Как я мог это сделать?
Например, это прекрасно работает:
<TextField id="outlined-basic" label="First Name" variant="outlined" onChange={e => {
this.setState({firstName: e.target.value})
}}
/>
, но это не так, потому что состояние firstName передается внутри реквизита:
{[{ label: 'First Name', state: {firstName}].map((item, index) => (
<TextField id="outlined-basic" label={item.label} variant="outlined" onChange={e => {
this.setState({{item.state}: e.target.value}) }}
/>
))}
constructor(props: Readonly<{}>) {
super(props);
this.state = {
firstName: '',
lastName: '',
phone: '',
email: '',
password: '',
};
}