redux form,Field组件问题

时间:2016-08-31 19:30:35

标签: redux-form

我在代码中使用Redux Form中的“Field”组件时遇到了一些问题。只需按照redux-form网站上的简单示例进行操作。

/* MyForm.jsx */
...
import { Field, reduxForm } from 'redux-form';

class MyForm extends Component {
    ...
    <form onSubmit={handleSubmit(...)}>
        <div>
            <label>First Name</label>
            <div>
                <Field name="firstName" component="input" type="text" placeholder="First Name"/>
            </div>
        </div>
        ...
}

export default reduxForm({
    form: 'myForm'
})(MyForm);

以下是使用redux表单的父组件。

/* page.jsx */
import MyForm from './MyForm';
...
<MyForm/>
...

表单无法呈现,并在控制台中显示错误:

React.createElement: type should not be null, undefined, boolean, or number. It should be a string (for DOM elements) or a ReactClass (for composite components).

Uncaught Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined.

但是,如果我使用material-ui或bootstrap表单字段,它可以正常工作。

我在渲染表单之前安装了表单缩减器:

import {reducer as formReducer} from 'redux-form';
const myReducer = combineReducers({
    ...
    form: formReducer
});

任何想法为什么Fields组件不起作用?

谢谢,

1 个答案:

答案 0 :(得分:1)

尝试将redux升级到6.0。我相信Field组件从v6.0开始。