反应FacebookAuth错误:在FB.init()之前调用FB.login()

时间:2017-10-11 00:39:54

标签: node.js facebook reactjs environment-variables

我正在使用admin-on-rest npm软件包启动项目,并尝试使用FacebookAuth npm软件包插入一个简单的SSO Facebook登录按钮。每次我尝试单击“登录”按钮时,都会收到以下错误:

  

FB.login()在FB.init()

之前调用

我正在使用带有以下变量的.env文件:REACT_APP_FACEBOOK_APP_ID并将其设置为正确的值。我甚至在我的应用程序中执行了console.log()并且可以看到它的输出。

我检查过,我只加载了一次FB SDK,而不是多次(这是其他线程报告的常见问题)。

2 个答案:

答案 0 :(得分:1)

好吧,事实证明这是一件非常愚蠢的事情,但仍有一些事情需要指出!

在我的.env文件中,我不小心在声明的末尾放了一个分号(;),如下所示:

REACT_APP_FACEBOOK_APP_ID = XXXXXXXXXXXX;

显然.env文件不喜欢分号。这很难从上面的错误中找出来。

因此,如果您因为这个问题而想要拔掉头发,并且您正在使用类似的技术,请检查以确保您在语法上犹太洁食,并且每个变量都被声明。

答案 1 :(得分:0)

有趣的是我忘了用我的应用程序ID替换您的应用程序ID:

<script>
    FB.init({
      appId: 'your-app-id',
      autoLogAppEvents: true,
      xfbml: true,
      version: 'v8.0'
    });
  </script>