0
私は同期の検証をしたいと思ったが、私はどのように入手するには、フィールドのオブジェクト取得フィールドのオブジェクトは、
validate.js
const validate = (values) => {
const errors = {};
if (!values.firstName) {
errors.firstName = 'Firstname is required';
} else if (values.firstName.length < 5 || values.firstName.length > 10) {
errors.firstName = 'Firstname must be between 5 - 10';
}
return errors;
}
export default validate;
何のアイデアを持っていませんSimpleReduxForm.js
import React, { Component } from 'react'
import { connect } from 'react-redux'
import { reduxForm, Field } from 'redux-form'
import validate from './validate'
const fields = [ 'firstName', 'lastName', 'age' ]
@reduxForm({
form: 'simpleReduxForm',
fields,
validate
})
export default class SimpleReduxForm extends Component {
render() {
const { handleSubmit, invalid, pristine, submitting } = this.props
const { fields } = this.props
console.log(fields)
return (
<div>
<form onSubmit={ handleSubmit(this.handleFormSubmit) }>
<Field name="firstName" component="input" type="text" />
<Field name="lastName" component="input" type="text" />
<Field name="age" component="input" type="number" />
<input type="submit" value="Submit" disabled={ pristine || invalid || submitting }/>
</form>
</div>
)
}
}
の出力それはちょうど、アレイは、私は以下のようにドキュメントからsample codingを見てきましたが、私が鉱山を取得する方法を何のアイデアを持っていない
オブジェクトではありません
以下のように上記のソースコードから0
const { fields: { firstName, lastName } } = this.props ... { firstName.touched && firstName.error && <div>{ firstName.error }</div> }
を仕事教えてください、ありがとう
おかげ@Gregg、私はあなたが提案したコーディングスタイルを行うことができると言及することを忘れていましたが、なぜ私はちょうどこの[例]のようにできません(https://github.com/erikras/react-redux-universal-hot-例/ blob/master/src/components/SurveyForm/SurveyFor感謝 – Artisan
この例では 'redux-form @ 3.0.12'を使用していますが、最新バージョンは' 6.0.5'です。そのためです。バージョン3の大規模な反復を使用したい場合は、動作すると思います。 – Gregg