使用state.score
,我无法让redux-form 7.0.3
验证API执行任何操作。
首先,我创建了一个基本的,最小的示例模板the docs。
Field
由此我假设表单reducer处理一个动作,设置可以在import React from 'react'
import { Field, reduxForm } from 'redux-form'
// removed validation fns
const required = value => {
console.log('Test of validation fn')
return (value ? undefined : 'Required')
}
// unchanged
const renderField = ({
input,
label,
type,
meta: { touched, error, warning }
}) =>
<div>
<label>
{label}
</label>
<div>
<input {...input} placeholder={label} type={type} />
{touched &&
((error &&
<span>
{error}
</span>) ||
(warning &&
<span>
{warning}
</span>))}
</div>
</div>
// removed fields & made into React Component
class FieldLevelValidations extends Component {
render(){
const { handleSubmit } = this.props
return (
<form onSubmit={handleSubmit}>
<Field
name="test"
type="text"
component={renderField}
label="Test Component"
validate={required}
/>
<div>
<button type="submit">
Submit
</button>
</div>
</form>
)
}
}
export default reduxForm({
form: 'fieldLevelValidation'
})(FieldLevelValidations)
中访问的道具,但事实并非如此。 renderField
和error
都未定义,永远不会调用warning
。此外,商店中没有设置required
或类似属性。我不知道这是一个错误还是我错过了一些关键部分,但我希望在这里发生更多。此外,文档中的一些更详细的信息会很好。