У меня возникла проблема с получением поля подтверждения поля ввода для работы с редукционной формой. На данный момент я просто пытаюсь проверить синхронизацию, чтобы проверить основные ошибки. Проблема в том, что форма, похоже, проверяет только проверку, когда компонент монтируется, а затем снова после этой точки. Вот код, у меня есть:поля редукционной формы, не повторяющиеся или обновляемые после загрузки формы
import React from 'react';
import { Field, reduxForm } from 'redux-form';
import * as Redux from 'react-redux';
import Input from './../../helpers/Input';
import Button from './../../helpers/Button';
export const Signup = React.createClass({
renderInput({ label, type, input: { value }, meta: { touched, error }}){
return (
<Input label={ label }
type={ type }
filled={ value ? true : false }
touched={ touched }
error={ error } />
);
},
render(){
const { handleSubmit } = this.props;
return(
<div>
<form onSubmit={ handleSubmit }>
<Field name="email" label="Email" component={ this.renderInput } />
<Field name="username" label="Username" component={ this.renderInput } />
<Field name="password" label="Password" type="password" component={ this.renderInput } />
<Field name="confirmPassword" label="Confirm Password" type="password" component={ this.renderInput } />
<Button type="submit" btnType="main" btnIcon="" btnText="Create Account" />
</form>
</div>
);
}
});
export const validate = values => {
const errors = {};
if (!values.username) {
errors.username = 'Required';
} else if (values.username.length > 15) {
errors.username = 'Must be 15 characters or less';
}
if (!values.email) {
errors.email = 'Required';
} else if (!/^[A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(values.email)) {
errors.email = 'Invalid email address';
}
console.log(errors);
return errors;
};
export default reduxForm({
form: 'signup',
validate
})(Signup);
Я чувствую, что я что-то очень фундаментальное здесь отсутствует, но я в тупик. Я чувствую, что действие должно быть отправлено для переключения «затронутого» свойства onBlur (и, таким образом, рендеринга формы), но, похоже, это не делает этого, и я не мог найти ничего подобного чтению через документы с редукционной формой , Есть идеи?