Redux-Formでは、onSubmit
をフォームコンポーネントの小道具として渡してから、フォームコンポーネントのフォームタグにonSubmit={handleSubmit}
プロパティがあるようです。これは、Redux-Formがすべてのフォームデータを集めて、単一のオブジェクトパラメータとしてonSubmit
関数に渡すときに意味をなさないでしょう。しかし、同じ親コンポーネントの複数のフォームコンポーネントの子を持つとどうなりますか?提出された情報とは異なることをしなければならない場合でも、両方のフォームの子供に1つのonSubmit
関数を渡すことができます。あなたは別のonSubmit
を渡すことができるように、複数のフォームの複数の親を持つ唯一のソリューションですか?私にとってこれはあまり乾燥していないようです。Reduxフォームの同じ親の複数のフォーム子コンポーネントの複数の#onSubmitsをどのように管理しますか?
0
A
答えて
0
ここでreactjsの概念はcompositionです。あなたがする必要がどのような
がある: -
は、一般的な形をしてください、CommonForm.jsそれを呼び出すことができます。このフォームはあなたのreduxフォームに添付されます。だからあなたのすべてのフォーム共通機能(フォームを開く、フォームを閉じるかもしれない)はここで実装されるでしょう。
P.S:ここにフィールドコンポーネントは存在しません。
ここで、レンダリングする5つの異なるフォームがあるとします。最初のフォームの例を考えてみましょう。 FirstForm.jsという名前のファイルを作成します。
ここでFirstForm.jsでフィールドをレンダリングし、レンダリングしたフィールドを小道具としてCommonFormに渡します(ここでは構図を使用しています)。
チェック次のコード: -
フォーム1
class Form1 extends Component {
render(){
const renderedFields = this.renderFormFields()
return(
<CommonForm {...this.props} renderedFields = {renderedFields } />
)
}
}
CommonForm
class CommonForm extends Component {
componentDidMount(){
const { data,initialize} = this.props
if(data){
initialize(data)
}
}
render(){
const { renderedFormFieldss } = this.props
return(
<div className='form-container'>
<form onSubmit={this.instrumentSplitCreateOrUpdate()}>
{renderedFormFields}
</form>
</div>
)
}
}
CommonForm = reduxForm({fields: ["text"], validate : validateInputField})(CommonForm)
export default CommonForm
あなたはReduxのフォームに接続するために同じ基本コンポーネントを使用しているこの方法です。
動的なフォーム: -
理想的には上記のクエリを解決するが、より興味深いものがあるはずです。あなたは一般的な形式の最後の行に適切なコードを経由した場合は、私は、パラメータとして以下渡しています見ることができます: -
{fields: ["text"]}
だから、あなたが使用したのと同じ形態を有するnames.Sayこれであなたは、変数を持つフォームを作成することができます複数のコンポーネントで同じフォームをレンダリングしたいが、名前は異なる。このためには、次のよう試すことができます: -
<CommonForm {...this.props} renderedFields = {renderedFields } />
からCommonFormを呼び出している間Form1が小道具を使用すると、フォームを作成すると、変数名とform
と呼ば渡すと言います。次のようなことができます: -
<CommonForm form='//some key' {...this.props} renderedFields = {renderedFields } />
関連する問題
- 1. 複数の親フォーム
- 2. 同じフォームの複数のインスタンスをc#
- 3. Zend_Form - 同じページの複数のフォーム
- 4. 複数の子コンポーネントが同じインスタンスが
- 5. このフォームをreduxでどのように管理しますか?
- 6. HTMLフォーム複数の同じ値入力
- 7. 同じタイプの複数の親を持つMysqlの子ども
- 8. SVNは同じプロジェクトの複数のバージョンを管理します
- 9. 同じクラスの同じbeanの複数の管理プロパティ
- 10. 複数の複数選択によるフォームの処理
- 11. firebaseの複数のユーザーのカウントを同じように管理したい
- 12. React-Reduxの同じコンポーネントの複数のインスタンス
- 13. Ruby on Rails:同じフォーム内の複数の同じ入力フィールド
- 14. Django複数のフォーム処理
- 15. 複数のテキストボックスを同じフォームの複数の送信ボタンでバインドする
- 16. 同じフォームの複数のインスタンスをテンプレートのユーザに
- 17. JQueryの検証SubmitHandlerを複数のフォームに同じページに入れよう
- 18. 複数のタブのReduxフォームによる検証
- 19. Perl CGI、複数のフォームと複数のサブミットボタンが同じページにある場合
- 20. 複数のバージョンのデータベースをどのように管理していますか?
- 21. 1つのページに同じモデル名の複数のフォームcakephp
- 22. このウェブページを複数のフォームでどのようにデザインしますか?
- 23. 複数のフォーム
- 24. 複数のフォーム
- 25. フォーム内の複数の子コンポーネント - 角度2
- 26. Mavenプラグイン管理複数の親
- 27. 複数の親ステートに同じ子ステートを添付する
- 28. Flask-WTF:提出時に同じデータを返す同じクラスの複数のフォーム
- 29. gitで同じコードベースの複数のブランチを管理する
- 30. 複数のボックスでボックスオーバーレイ高さを同じように管理する方法