編集ボタンをクリックして、フォームに既存のデータを入力します。
ボタンがクリックされると、更新状態は編集状態になります。
componentWillReceivePropsでsetFieldsValueメソッドを呼び出します。約1分後、フォームに記入されます。
次に、任意の入力をクリックして、約1分間待ち続けます。
setFieldsValue
の本質は、外部ラッパーのsetState
を呼び出し、間接的にcomponentWillReceiveProps
を呼び出すことであるため、無限ループになります。
mapPropsToFields
http://ant.design/components/form/#Form.create (オプション)を使用してください
@benjycuiありがとう
mapPropsToFieldsは、小道具を対応する値に変換します。これを使用して、Reduxストアの値を読み取ることができます。
Function(props):Object {fieldName:Object {value}}
mapPropsToFieldsにどのように書きたいのかわかりません
こんにちは、この会話を翻訳する方法はありますか?
@bnlambertあなたの質問は何ですか
setFieldsValue
で初期値を設定する方法を知りたいです。
また、私のデートピッカーカレンダーは中国語で表示されています。 どうすれば修正できますか?
moment.locale('en');
を試すことができます
'antd'からモーメントを要求しますか、それとも個別にダウンロードする必要がありますか?
もう少し明確にしてください。 ありがとう
あなたのウェブサイトには、「setFieldsValue」に関するこのメモがあります
please don't use it in componentWillReceiveProps, otherwise, it will cause an endless loop, more)
それは私がその説明を仮定するもののためにこのページにリンクしています。 可能であれば、ある種の翻訳を入手できますか?
どうも
@coljungはGoogle翻訳を試してみてください。
@bnlambert @coljungまたは、Chromeを使用している場合は、右クリック->英語に翻訳
メンテナ同士のコミュニケーションを便利・迅速にするために中国語で書かれたものもあると思いますが、公式資料で参考になっているので「一部」なので翻訳してください。
代替案:ここに書かれた情報は、公式文書に含まれている必要があります。
@benjycui IMO「Google翻訳を試す」は建設的なコメントではなく、 CODE_OF_CONDUCT.mdに記載されている行動規則に違反しています。
- 歓迎的で包括的な言葉を使う
- 異なる視点や経験を尊重する
- 建設的な批判を優雅に受け入れる
- コミュニティに最適なものに焦点を当てる
- 他のコミュニティメンバーに共感を示す
「:smile:」と反応した9人の皆さんへ:あなたは明らかにバイリンガルです。コンテンツをGoogle翻訳し、必要に応じて言語スキルのおかげで翻訳を調整し、代わりにここにコンテンツを貼り付けてください。
それは言われています:
componentWillReceivedProps
setFieldsValue
を呼び出すと、ループが発生し、最終的に1分後に停止します。 フィールドを変更するたびに、新しい「無限」ループが発生します。setFieldsValue
がHOCのthis.setState
につながると答えたので、小道具を変更し、 componentWillReceiveProps
メソッドを直接呼び出します。 そのため、ループがあります。 mapPropsToFields
を使用する必要があります。mapPropsToFields
はストアからデータを読み取るために使用されますが、どうすれば書き込むことができますか?このフォームは非常に使いにくく、パッケージング後に使用するコストが高すぎます。
https://ant.design/components/form/#components -form-demo-global-state
mapPropsToFieldsとアップロードの競合アップロードはフォームをリセットします
最も参考になるコメント
このフォームは非常に使いにくく、パッケージング後に使用するコストが高すぎます。