私はこれに対する答えがはいと思われるが、私は確信したい。mapStateToPropsではなく、アクション作成者を直接呼び出すことはできますか?
私はこれらのアクションの作成者の輸入があります。そして、
import {
updateField,
goBackOneStep,
finishStep
} from './signup_actions'
は、このビューの下部に、私が以前にこのいた:
export default connect(mapStateToProps, {
updateField,
goBackOneStep,
finishStep
})(InputTel)
を、私はthis.props.finishStep(INPUT_TEL, { tel }, null)
を呼んでいた。しかし、 Formikを利用するようにビューを変更しました.HOCからのサブミットアクションを処理する方が好きなので、今私はこれを持っています:
export default connect(mapStateToProps, {
updateField,
goBackOneStep
})(withFormik({
validate,
validateOnBlur: true,
validateOnchange: true,
handleSubmit: ({ tel }) => finishStep(INPUT_TEL, { tel }, null)
})(InputTel))
私はただインポートからアクションクリエイターを呼び出すだけです。これはReactとReact Nativeの両方でOKですか? (アンチパターンや状態の混乱はない?)。私は確認するための文書を見つけることができませんが、私はStephen Grider Reactコースからどちらかといえば違いがないことを覚えています。
[編集]:ここに最終的な解決策があります。私は、そのFormik、特定のコンテキストに含まれます:Reduxのは、アクションの作成者を正しく呼び出していないに起因する状態変化をトリガされなかったため
export default connect(mapStateToProps, {
updateField,
goBackOneStep,
finishStep
})(withFormik({
validate,
validateOnBlur: true,
validateOnChange: true,
handleSubmit: ({ tel }, { props }) => props.finishStep(INPUT_TEL, { tel }, null)
})(InputTel))
フライングは、正しいです。