2017-10-10 7 views
0

私はredux形式からFieldArraysを使用してフォームを作成しようとしています。 fieldsアレイ内の各フィールドには、「注文」フィールドが必要です。このフィールドにデフォルト/初期値をあらかじめ入力しておきたい。私はフォームにinitialValuesを提供する方法を知っていますが、個人のためにそれを行う方法を理解することはできませんField個々のフィールドにredux-formの初期値を与える方法は?

const renderQuestion = ({ fields, meta: { error, submitFailed } }) => (
    <ul> 

    {fields.map((question, index) => (
     <li key={index}> 
     <button type="button" title="Remove Question" onClick={() => fields.remove(index)}> 
      x 
     </button> 
     <h4>Question #{index + 1}</h4> 
     <Field 
      name={`${question}.order`} 
      value={index + 1} // This line is an example to what I am trying to achieve 
      type="number" 
      component={renderField} 
      label="Order" /> 
     <Field name={`${question}.prompt`} type="text" component={renderField} label="Prompt" />   
     </li> 
    ))} 
    </ul> 
); 

const QuizStepAddForm = props => { 
     ... 
     <FieldArray name="questions" component={renderQuestion} /> 
     ... 
}; 

答えて

0
+0

冗談:)。ありがとう! – SaidAkh

+0

もう一度@kngrooありがとうございました。もう一度私を助けてもらえますか?この初期値をラップされたコンポーネント(renderField)に適切に与える方法を教えてください。この初期値はユーザが変更できる開始点になります。私はそれをこのように動作させようとしました: ' SaidAkh

+0

私はあなたが何を意味するか正確には分かりません。 ''をラップするラッパーコンポーネントの小道具として、いくつかの初期値を渡したいですか?制御されたコンポーネントと制御されていないコンポーネントについては、こちらをご覧ください: https://reactjs.org/docs/forms.html#controlled-components – kngroo

関連する問題