2016-11-29 60 views
0

来渲染数值,我尝试了一切找到解决方案,但实际上没有任何工作。我有一个标准的react/redux应用程序。 (这两个库都是最新版本。)在写这篇文章之前,我没有使用redux-form

现在我想用redux-form来控制我的窗体。我已经添加了redux-form reducer并将“Simple Form”复制到我的应用程序中。我可以看到,在更改redux动作时,被激发,但输入字段的值永远不会被渲染。 此外,这些操作始终只包含我输入的最后一个字符。

我真的想提供代码,但由于某种原因,您网站上的代码似乎工作。 是否有一些已知的原因,输入值没有呈现?我确信onChange操作正在被调用。

哦,我应该提到onBlur,整个价值从商店中删除。

编辑: 我已经删除了所有其他减速器,中间件和测试的东西。还是一样的结果

+0

你能分享相关的代码片段吗? – geoboy

+0

您是否已将减速器安装为“form”? –

+0

嘿@Christian,你找到了解决你的问题?我遇到了类似的问题,我无法在输入字段上输入任何内容。 onChange被触发,但输入字段不会使用新值更新。 – rafaelbiten

回答

2

我想我只是找到了解决这个问题,这是一个有点傻=/

这里是我有:

import { combineReducers } from 'redux'; 
import { reducer as forms } from 'redux-form'; 

import otherReducer from './otherReducer'; 

export default combineReducers({ otherReducer, forms }); 

注意到我进口终极版形式reducer作为forms,并将它传递给我的combineReader(如我使用otherReducer),使用ES6 Object属性值简写。

的问题是,用于Redux的形式减速传递给我们的combineReducers 要重点被命名为形式,所以我们必须将它更改为:

export default combineReducers({ customer, form: forms }); 

import { reducer as form } from 'redux-form'; 
export default combineReducers({ otherReducer, form }); 

希望这有助于...我只希望他们的文档更清楚是。

相关问题