Я использую реагирующие хуки, использую состояние для обновления объекта. У меня есть компонент многократного использования, который является просто входом, которому я передаю реквизиты, и обработчик onChange, который обновляет состояние.
Как я могу использовать значение проп "fooType" для динамического обновления состояния? Это работает, кроме fooType
в fooType: e.target.value`, не будучи распознанным как переменная. Есть ли способ рефакторинга, чтобы это работало таким образом?
Компонент ввода:
const Input = (props) => {
const { foo, foos, setFoos, fooType } = props;
return (
<input type='text'
placeholder={ foo }
value={ foo }
onChange={ (e) => setFoos({ ...foos, fooType: e.target.value }) } />
);
};
Вот файл, в котором я передаю реквизиты на три входа
const InputGroup = (props) => {
// initial state
const [foos, setFoos] = useState({
foo1: 0, foo2: 0, foo3: 0
});
return (
<div>
<Input foo={ foos.foo1 }
fooType='foo1'
foos={ foos }
setFoos={ setFoos } />
<Input foo={ foos.foo2 }
fooType='foo2'
foos={ foos }
setFoos={ setFoos } />
<Input foo={ foos.foo3 }
fooType='foo3'
foos={ foos }
setFoos={ setFoos }/>
</div>
);
}