Я новичок в React, я пытаюсь реализовать некоторую проверку ошибок с помощью функции стрелки реакции, но мне не повезло весь день.Уловка работает, и я могу распечатать ошибки, но я не знаю, как связать ошибки, которые я печатаю, в errorsHandler () с другим const, где форма предназначена для стиля и предупреждений.
const errorsHandler= fieldErrors => {
if (fieldErrors) {
fieldErrors.forEach(err => {
const errorFieldName= err.field;
const errorDescription = err.message;
console.log('Field', errorFieldName, 'Description', errorDescription);
// Field name Description name already exists
});
}
};
export const defaultGroupModel = {
description: '',
active: true,
name: '',
}
const GroupFormModal = ({ editId, editGroup, onSave}) => {
const [groupState, setGroupState] = useState(defaultGroupModel);
useEffect(() => {
if (editGroup) {
setGroupState(editGroup);
}
}, [editGroup]);
const handleChange = ({ target: { value, name} }) => {
setGroupState({ ...groupState, [name]: value });
};
return ( (...) <Form onSubmit={e => onSave(e, groupState)} onReset={onReset}> (...);
};
const mapDispatchToProps = dispatch => ({
onSave: (e, group) => {
e.preventDefault();
if (group.id) {
dispatch(updateGroup(group));
} else {
dispatch(createGroup(group)).catch(error => {
errorsHandler(error.data.fieldErrors);
});
}
},
});
export default connect(
mapStateToProps,
mapDispatchToProps,
)(GroupFormModal);
У меня естьпопытался создать [errorState, setErrorState] и использовать useEffect внутри errorsHandler, но получить Invalid Hook.Как я могу иметь дескриптор внутри улова, чтобы быть в том же контексте, что и форма?
Заранее спасибо