Jon*_*att 2 reactjs immutable.js react-native redux redux-form
我正在尝试从父组件检测表单状态是否脏,因此,如果表单值已更改,我只能显示一个提交按钮。
初始渲染按预期显示为false,但是更改值不会触发使用新vlaue的重新渲染。
import React from 'react'
import { isDirty } from 'redux-form'
import { connect } from 'react-redux'
<Parent>
{ props.isDirty ? <SubmitButton /> : null }
<Form {...etc} />
</Parent>
const mapStateToProps = state => ({
...
isDirty: isDirty('myForm')(state),
})
export default connect(mapStateToProps, null)(Parent)
Run Code Online (Sandbox Code Playgroud)
控制台日志记录props.isDirty显示的初始呈现<Parent/> isDirty为false。但是,更改值不会触发<Parent/>使用新值重新呈现。
更新:
经过进一步调查,我认为这是一个错误:
const mapStateToProps = (state) => {
console.log(isDirty('myForm')(state)
return {
...
isDirty: isDirty('myForm')(state),
}
Run Code Online (Sandbox Code Playgroud)
此处,更改表单值会mapStateToProps按预期触发,但isDirty始终为false。
| 归档时间: |
|
| 查看次数: |
1559 次 |
| 最近记录: |