Всем привет. При начинании любого проекта, я всегда задумываюсь про то, как обрабатывать формы. Сначала написал свой onChange и компонент Input
export const onChange = (e, val = "value") => dispatch => {
let type = e.target.name; //actionType of reducer
let property = e.target.id; // reducer's property
let value = e.target[val]; // input value
let { errors } = validate[type]({ [property]: value }); // error object for all related inputs
dispatch([
{
type: type,
payload: { [property]: value, isDataChange: true }
},
{
type: `${type}_ERROR`,
payload: {
errors: { [property]: get(errors, property) }
}
}
]);
};
Но при быстром вводе данных, это нереально лагает.
Вопросы:
- Как вы обрабатываете формы?
- Как делаете валидацию (создаете ли отдельный файл конфига)?
И если можно, то приводите примеры пожалуйста