首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >React Plaid链接加载Plaid时出错

React Plaid链接加载Plaid时出错
EN

Stack Overflow用户
提问于 2021-07-02 13:03:34
回答 1查看 231关注 0票数 0

我无论如何也找不出这里出了什么问题。我检查了一些问题,似乎加载plaid null的错误在过去就是一个问题。我能够成功地创建链接令牌,并在传递到PlaidLink之前显示它。PlaidLink按钮仍然处于禁用状态,并且在控制台中加载plaid null时出现错误。我遗漏了什么?这是一个到格子文档的链接。https://github.com/plaid/react-plaid-link

我使用的是"react-plaid-link":"^3.2.0“

这是我的代码。

代码语言:javascript
复制
import React, { useCallback, useState, FunctionComponent, useEffect } from "react";
import { usePlaidLink, PlaidLinkOptions, PlaidLinkOnSuccess } from "react-plaid-link";
// @ts-ignore
//import { PlaidLinkOnSuccess } from "react-plaid-link/src/types/index.ts";



interface Props {
  token: string;
}

const PlaidLink: FunctionComponent<Props> = ({ token }) => {


  const onSuccess = useCallback<PlaidLinkOnSuccess>(
(public_token: any, metadata: any) => {
  // send public_token to server
  const setToken = async () => {
    console.log("token sending to server for exchange")
    const response = await fetch("/api/set_access_token", {
      method: "POST",
      headers: {
        "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8",
      },
      body: `public_token=${public_token}`,
    });
  };
},
[]
  );

  const config: PlaidLinkOptions = {
token,
onSuccess,
// onExit
// onEvent
  };



  const { open, ready, error } = usePlaidLink(config);

  return (
<div>
  <p>{token}</p>
  <button
    onClick={() => open()}
    disabled={!ready}
  >
    Connect a bank account
  </button>
</div>
  );
};


const PrePlaid: FunctionComponent = () => {
  const [token, setToken] = useState<string | null>(null);

  // generate a link_token
  React.useEffect(() => {
async function createLinkToken() {
  let response = await fetch("/api/create_link_token");
  const { link_token } = await response.json();
  console.log("this is the link token" + link_token);
  setToken(link_token);
}
console.log("this should happen first")
createLinkToken();
  }, []);

  // only initialize Link once our token exists
  return token === null ? (
// insert your loading animation here
<div className="loader"></div>
  ) : (
  <PlaidLink token={token} />
  );
    }

export default PrePlaid;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-03 14:58:17

index.html中缺少脚本标记

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68219841

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档