選択したオプションを変更したいときに反応に問題があります。 問題は、値がオブジェクトで、オプション値属性で渡すことができないということです。属性値としてオブジェクトを選択して反応オプションを選択する
class Selector extends React.Component {
contructor(props) {
super(props)
this.state = { obj: null }
this.handleChange = this.handleChange.bind(this)
}
handleChange(e) {
this.setState({obj: e.target.value})
}
render() {
<select onChange={handleChange}>
{this.props.listOption.map((option, index) =>
<option key={index} value={option.obj}>
{option.name}
</option>
)}
</select>
}
}
と
<Selector option={[{name: "name", obj:{...}}, ...]}>
で私が選択したオプションの値を持つコンポーネントの状態を変更する必要があります。
は、次のコードを参照してください。 状態の変更が"object Object"
の場合はどうなりますか?これは、最終的なビューの属性にjavascriptオブジェクトを埋め込むことができないためです。私は正しいですよ?
さらに、コンストラクタ内でヌルとしてobj
をnullに設定しました 正しい方法がありますか?
ありがとう、これは私が知りたかったものです! – Frilox