Asynchronous 带有onSubmit异步调用的Formik表单组件的警告消息:取消useEffect清理函数中的所有订阅和异步任务

Asynchronous 带有onSubmit异步调用的Formik表单组件的警告消息:取消useEffect清理函数中的所有订阅和异步任务,asynchronous,memory-leaks,react-hooks,formik,Asynchronous,Memory Leaks,React Hooks,Formik,我想我理解这个问题的概念,但我不确定我需要如何“清理”,因为组件中没有useEffect: 警告:无法对未安装的组件执行React状态更新。这是一个no-op,但它表示应用程序中存在内存泄漏。要修复此问题,请取消useEffect清理函数中的所有订阅和异步任务。 在Formik中(位于LoginForm.js:19) 在LoginForm中(由Context.Consumer创建) 在withRouter(LoginForm)中(位于LandingPage.js:17) 在div中(位于Land

我想我理解这个问题的概念,但我不确定我需要如何“清理”,因为组件中没有useEffect:

警告:无法对未安装的组件执行React状态更新。这是一个no-op,但它表示应用程序中存在内存泄漏。要修复此问题,请取消useEffect清理函数中的所有订阅和异步任务。
在Formik中(位于LoginForm.js:19)
在LoginForm中(由Context.Consumer创建)
在withRouter(LoginForm)中(位于LandingPage.js:17)
在div中(位于LandingPage.js:16)
在div中(位于LandingPage.js:15)
在div中(位于LandingPage.js:9)
在div中(位于LandingPage.js:8)
登录页面中(由Context.Consumer创建)
途中(见App.js:33)
该表单如下所示:

//导入。。。
const LoginForm=(道具)=>{
const{setAuthStatus}=useContext(AuthContext);
const{setUserData}=useContext(UserContext);
返回(
{
常量配置={
baseURL:“/api/auth/login”,
方法:“post”,
事实上,
标题:{
“内容类型”:“应用程序/json”,
},
数据:价值观,
};
axios(配置)。然后((res)=>{
setAuthStatus(“已验证”);
setItem('authstatus','verified');
props.history.push('/users/dashboard');
}).catch((错误)=>{
动作({
服务器:错误,
});
setItem('authstatus','unverified');
}).最后(()=>actions.setSubmitting(false));
}}
>
{({isSubmitting,errors})=>(
...
)}
);
};
使用路由器导出默认值(LoginForm);
因此,问题似乎在于,当此
LoginForm
装载到页面上,然后页面更改或在api调用仍处于活动状态时“卸载”时,可能会造成内存泄漏

我知道您可以在useEffect中返回一个函数来进行清理,但是在我的情况下,如果没有useEffect,如何解决这个问题