2017-02-21 104 views
0

redux-formFieldArrayで使用していますが、どのボタンがクリックされたかによって異なるレンダリングを作成しようとしています。フィールド型フィールドに還元型のパス値を入力

const renderCatalogCategories = (props) => { 

const { fields } = props; 

return (
<div> 
    {fields.map((data, idx) => 
     <Panel key={idx} header={`${data}.type`} data={data} /> 
    )} 


    <DropdownButton> 
     <MenuItem onClick={() => fields.push({type: 'a'})}>a</MenuItem> 
     <MenuItem onClick={() => fields.push({type: 'b'})}>b</MenuItem> 
    </DropdownButton> 
</div>) 
}; 

私はfields.push渡しtypeの値を取得することは不可能である:私は(形態でFieldArrayのcomponent attributである)は、以下の機能を有していると仮定

MenuItems。私はこの価値をどのように得ることができるのか考えていますか?

dataの値は単なる文字列です。 categories[9]

答えて

2

よく質問されました。

あなたが探しているものはfields.get(idx)です。

しかし、<Field>コンポーネントに配列内の値を編集するには、フィールド名(dataという名前)が必要です。

+0

'fields.getAll()'もその仕事をしました。ありがとう! –

関連する問題