【发布时间】:2019-06-04 10:02:31
【问题描述】:
更新:从我给你的信息中无法解决,问题是代码在 ComponentReceiveProps 挂钩中更新并且原始值覆盖了更改的值。
我从事的项目由外部机构开发,但效果不佳。
它是使用 React、Redux 和 Redux-Forms 的前端应用程序
在两个不同的页面中使用一种表单。它在一页中运行良好,但在另一页中没有反应。我无法通过 UI 更改输入值,也无法通过 changeFieldValue 函数更改。 Redux 状态没有改变。
在这两种情况下,都使用相同的组件。它包含reduxForm 函数。
const mapDispatchToProps = dispatch => ({
changeFieldValue: (field, value) => dispatch(change('ContractConsumption', field, value)),
});
class ContractConsumption extends React.Component {
// ...
}
ContractConsumption = reduxForm({
form: 'ContractConsumption',
enableReinitialize: true
})(ContractConsumption);
任何帮助将不胜感激。我很困惑,为什么带有 redux 形式的同一个组件在一种情况下可以工作,而在另一种情况下却不行。
整个代码过于复杂且耦合度高,因此无法轻松共享或逐部分测试。
【问题讨论】:
标签: reactjs redux redux-form