単純な入力還元フォームフィールド内に簡単なデータ注入を行いたい。 私に説明させてください:入力フィールドのリスナーで「変更」を使用
私は1つの大きなフォームを持っていて、ユーザーが "LastName"入力内に書いているとき、私はちょうど "LastNameFather"として2番目のフィールドに値を注入したいと思います。
芋非常にシンプル、
私はformvalueSelectorを行い、最初の入力値を取得します。
const selecor = formValueSelector('MyForm')
const mapStateToProps = (state,props) => {
const name = selector(state,"nameOne")
return {
name : name
}}
そして私はcomponentWillReceivePropsを使って書き込みを処理し、私の値を挿入するために小道具の変更を使用していました。
componentWillReceiveProps = (props) => {
props.name != null ? props.change("name2",props.name) : null
}
ここで、最初のフィールドの中に書き込むと、無限に再レンダリングされます。ご覧のとおり、私は2番目のフィールドを変更する前にprops.name!= nullをテストする必要があります。
とにかく、私は何を逃したのですか?
おかげ
dispatchを 'props.change'にバインドしましたか? –
うん、私の行動が正しく派遣されているのがわかる。 私は何が間違っているのか分かりません。 – GreGGus
私はあなたの道を行くつもりはありません@GreGGus、私は 'lastname'の' Field'に 'onBlur'リスナーを行い、'()=> props.change(...) 'に行きます。 –