如何解决类型错误:未定义不是一个对象

81 阅读1分钟

我现在不会使用 react-facebook-login,www.npmjs.com/package/rea…

但我会在我的Next.js/React应用程序中根据Facebook的标准指令实现Facebook登录,我可以在Facebook开发者网站上找到。

我已经在_document.tsx 中添加了script 。我有Next.js,脚本在那里:

<script
  dangerouslySetInnerHTML={{
    __html: `
                                window.fbAsyncInit = function() {
                                    FB.init({
                                      appId      : '2773133082797983',
                                      cookie     : true,
                                      xfbml      : true,
                                      version    : 'v14.0'
                                    });
                                      
                                    FB.AppEvents.logPageView();   
                            `,
  }}
/>

但我如何才能执行以下调用?FB.getLoginStatus(

这是我尝试的,基于这个视频:https://morioh.com/p/6ef9c92aebd1

<a
  className="btn btn-sm text-bold btn-circle shadow-1 full-width-sm"
  onClick={() => {
    window.FB.getLoginStatus(function (response) {
      statusChangeCallback(response);
    });
  }}
>
  Bejelentkezem
</a>

这样做对吗?

我得到了以下错误:

TypeError: undefined is not an object (evaluating 'window.FB.getLoginStatus')