我正在尝试传递props
并在.then()
函数的promise
内部调用单独文件中的函数。
例如,如果我要onSubmit
以
handleSubmit
const handleSubmit = () => {
setLoading(true);
something
.doSomething()
.then(() => {
SuccessBanner({ success: 'passwordReset' });
setLoading(false);
})
.catch((error: any) => {
ErrorBanner(error);
setLoading(false);
});
};
,例如SuccessBanner
被导入为
const SuccessBanner = (success: any) => {
const { toggleSuccessBanner } = useContext(GlobalContext);
let successMessage: any;
if (success === 'passwordReset') {
successMessage = 'Password Reset Success Message';
} else {
successMessage = 'All other Success Messages';
}
toggleSuccessBanner(successMessage);
};
export default SuccessBanner;
首先,运行onSubmit
函数.doSomething()
。但是,then()
SuccessBanner()
内没有运行,但是,我可以在console
之前添加SuccessBanner()
消息,但是从不运行。
无法向console
添加const SuccessBanner
消息。
如何在SuccessBanner
中运行handleSubmit
?
这可行,但是我想将函数分为两个常用文件。
const handleSubmit = () => {
setLoading(true);
something
.doSomething()
.then(() => {
const { toggleSuccessBanner } = useContext(GlobalContext);
let successMessage: any;
if (success === 'passwordReset') {
successMessage = 'Password Reset Success Message';
} else {
successMessage = 'All other Success Messages';
}
toggleSuccessBanner(successMessage);
setLoading(false);
})
.catch((error: any) => {
ErrorBanner(error);
setLoading(false);
});
};