我尝试学习如何使用redux-form,我有一点问题。 例如,我有一个像这样的Field组件:
<Field
name='individual.email'
id="email"
component={ renderInput }
placeholder='test'
/>
在validate.js中我有类似的东西:
if ( !values.individual.email ) {
errors.individual.email = 'Required'
}
但我有错误:
TypeError: Cannot set property 'email' of undefined
如果我仅通过'电子邮件'更改我的字段名称,那么它可以正常工作。当我的字段是'individual.email'时,我知道我做错了吗?
答案 0 :(得分:0)
errors.invididual.email
是errors
对象中的一个对象,即
errors = {
individual: {
email: 'Required'
}
}
在validate()
函数的顶部,您可能已声明errors
对象,但它不知道其上的individual
属性。这就是仅email
字段有效的原因 - 您已定义errors
并将email
属性设置为required
。
我不确定它是否有效,但您必须执行以下操作:
const errors = {
individual: {}
};
然后你可以分配errors.individual.email = 'Required'
答案 1 :(得分:0)
更改名称字段,使其不使用点。使用它individualEmail
将是标准的命名方式。你不应该使用。名字
答案 2 :(得分:0)
试试这个
sysret_check