如何解决React Plaid Link:成功切换事件后触发 onExit 回调错误
我目前收到来自 onExit 回调的错误消息,指出在触发 onSucess 回调后需要凭据才能将项目链接到 Plaid。 onSuccess 函数在提交时成功命中我的端点并在触发时连接帐户,但 onExit 函数总是在之后执行。我需要弄清楚为什么当一切似乎都按预期工作时我会收到错误消息。我猜我遗漏了一些东西,所以任何帮助将不胜感激!
const connectAccount = (account: any) => {
return useApi('/v1/expense/payments/accounts/connect','POST',account).then((response) => {
if(response) {
getAccounts(0,2).then(() => {
if(account.length !== 0) {
getActiveView('LIST');
} else {
getActiveView('LOADER');
}
return response;
});
};
return response;
});
};
const onSuccess = useCallback(
(public_token,Metadata) => {
connectAccount({
accounts: [
{
id: Metadata.account.id,mask: Metadata.account.mask,name: Metadata.account.name,},],institutionId: Metadata.institution.institution_id,institutionName: Metadata.institution.name,publicToken: Metadata.public_token,});
},[],);
const onExit = useCallback(
(error,Metadata) => {
console.log(error,Metadata);
},);
const config: PlaidLinkOptions = {
token,onSuccess,onExit,};
const { open,ready } = usePlaidLink(config);
return (
<>
{ready ? open() : null}
</>
);
};
export const Link = (props: Props) => {
const [token,setToken] = useState<string | null>(null);
const getAccountLink = () => {
return useApi('/v1/expense/payments/accounts/link').then((response) => {
if (response && response.linkToken) {
setToken(response.linkToken);
} else {
return;
};
});
};
// generate a link_token
useEffect(() => {
getAccountLink();
},[]);
// initialize Link modal
return token === null ? (
<Loader />
) : (
<PlaidLink
token={token}
getActiveView={props.getActiveView}
getAccounts={props.getAccounts}
/>
);
};
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。