Imは選択肢のコンポーネントの実装です
どのように私は私がしたいのか、非常に反応する新しいと私は登録ページのチェックボックス要素に<br></p> <p>、以下を働いて反応するコールバック
const ChoiceItem = ({ options, itemId, selectedIndex, onChange }) => (
handleChange: function(checked){
const value = [];
options.map(option, i) => (
value[ i ] = checked;
)
},
<Card>
{
options
.map((option, i) => (
<Checkbox
id={ `Choiceitem-checkbox-${ i }-${ itemId }` }
key={ i }
label={ option.text }
style={ styles.checkbox }
value={ '' + i }
onChange={ (checked) => onChange(itemId, [ i ], checked) }
/>
))
}
</Card>
);
を実装することができますここでは、オプションをループしてvalueという名前の配列に値を取得し、登録フォームにhandleAnswerChangeをコールしてそこに値を設定します。誰かがそれをどのようにアーカイブすることができるのか教えていただけますか?
ありがとうございます。
コードスニペットでは、 'this'を' this.handleAnswerChange'にバインドしませんでした。 つまり、 'this.handleAnswerChange = this.handleAnswerChange.bind(this)'を 'コンストラクタ 'に配置する必要があります。それ以外の場合、 'this.setState()'はあなたのケースでは動作しません。あなたは 'renderItem()'で 'props'を渡しませんでした。 –
@andre 'handleAnswerChange'は矢印関数を使って定義されているので自動的にバインドされます。これは少なくとも2段目のバベルを使用する必要があります。 – kwelch
@kwelch oops、申し訳ありませんが、私は彼/彼は矢の機能を使用して気づかなかった、私の悪い。 –