2017-03-22 16 views
0

私はそのような形があります。Redux-form:FieldArrayフォームで項目を取得する方法は?

<form onSubmit={handleSubmit}> 
    <FieldArray name="items"/> 

    {???fields.length??? && <div className="controls"> 

    <button type="submit">Submit</button> 

    </div>} 

</form> 

を私は少なくとも1本のラインを持っている場合にのみ、送信ボタンを表示したいです。私はそれをどのようにすることができますか?

答えて

1

form value selectorsを使用できますが、代わりに良い検証ルールを定義する方がよいでしょう。あなたは検証機能を書くことができますし、あなたのフォームに送信する有効な小道具を持っています。あなたは、私が使用セレクタをしたくない

{this.props.valid && <div className="controls"> 

<button type="submit">Submit</button> 

</div>} 
+0

ような何かを書くことができるよりも

。しかし、妥当性...それは面白い。考えてみましょう – indapublic

+0

redux形式6では、セレクタ(基本的にはレデックスストアを探しています)を使って値を取得する以外のオプションがあるとは思いません。最初のフォームは有効なものに見えるので、ダーティー値をチェックすることもできます。 – backman

+0

行を追加して削除すると、フォームの小道具は以下のようになります: 'invalid = false、pristine = false、dirty = true' – indapublic

関連する問題