Ich habe eine Stateful-Komponente, in der ich versuche, einige zustandslose Komponenten (jede mit Texteingabe) mit map zu rendern.Received event.value ist bei Texteingabe nicht definiert.
Das Hauptproblem ist, dass, wenn ich den Text in Eingabe setze ich undefined
als event.target
empfange. Ich vermute, dass das Problem der aktuelle Kontext ist. Ich habe versucht zu debuggen, aber ich habe keine Ideen mehr, wie ich dieses Problem lösen könnte.
Geordnete Komponente:
handleUpdateInput = (name) => {
this.setState({ [name]: event.target.value }) // event.target = undefined
}
renderAdvancedOptions(fields) {
return fields.map(field => {
const { id, name } = field;
return (
<AdvancedOption
key={id}
name={name}
inputValue={this.state[name]}
handleUpdateInput={this.handleUpdateInput}
/>
);
});
}
Kinder Komponente:
const AdvancedOption = ({ name, inputValue, handleUpdateInput }) => {
return (
<input
name={name}
onChange={() => handleUpdateInput(name)}
value={inputValue}
type="text"
/>
);
};
export default AdvancedOption;
Danke Kumpel! Es funktioniert. Ich war so nah an meinen bisherigen Lösungen. –