У меня есть функция, которая отправляет данные регистра в конечную точку
Поэтому я делаю загрузку, когда пользователь нажимает кнопку регистрации,
, но эта загрузка больше не появляется!
и я получил предупреждение
Невозможно выполнить обновление состояния React для неустановленного компонента. Это неоперация, но она указывает на утечку памяти в вашем приложении. Чтобы исправить, отмените все подписки и асинхронные задачи в функции очистки useEffect.
Я пытаюсь использовать другой способ setState 'loading'
1) установить состояние загрузки в первой строке Затем моя функция вызывает мой API.
this.setState({loading:true});
API.post(....);
2) заставляет API вызывать функцию обратного вызова при загрузке setState, как в фрагменте кода ниже
, но никто не работает: \
но, к сожалению, не работает
signUp = data => {
this.setState({loading: true}, () => {
API.post('/register', data)
.then(async response => {
let {
data: {
data: {
response: {token},
},
},
} = response;
console.log(token);
this.props.dispatch(isLoginFunc(true));
await saveToken('id_token', token);
this.setState({loading: false}, () =>
this.props.navigation.navigate('TabHome'),
);
})
.catch(this.setState({loading: false}));
});
};
Calling SignUp ()
<Formik
validationSchema={formSchema}
initialValues={initialValues}
onSubmit={(values, actions) => {
this.signUp(values);
actions.resetForm();
}}>
....
</Formik>