javascript - 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}
/>
);
};
解决方案
推荐阅读
- logstash - 在 Logstash 中发送一个字段作为根字段
- python - 从 .pb 文件加载经过 TensorRT 优化的 TensorFlow 图的时间极长(超过 10 分钟)
- javascript - 在 Node js/Mochausing 中加载 json 文件内容需要模块动态传递文件名
- javascript - WordPress主题中的if else语句
- excel - 打开 Excel 文件,使用 Outlook VBA 将数据导入该文件
- c# - Twiml 出站呼叫
- python - 使用 gluLookAt() 会导致对象旋转
- architecture - 作为聚合根的自引用类
- c++ - 如何在 Windows 10 上修复 Visual Studio 2017 中特定于计算机的幻像 IntelliSense 错误?
- sql - 将 Find Dupes 查询转换为 Delete Dupes 查询