Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs React应用程序:如何实现Facebook登录?_Reactjs_Facebook Javascript Sdk_Facebook Login - Fatal编程技术网

Reactjs React应用程序:如何实现Facebook登录?

Reactjs React应用程序:如何实现Facebook登录?,reactjs,facebook-javascript-sdk,facebook-login,Reactjs,Facebook Javascript Sdk,Facebook Login,我知道,react facebook登录和react facebook存在。尽管如此,我想以我自己的方式实现它,我被困在那里 在my index.html中,我有以下内容: <body> <div id="fb-root"></div> <script async defer crossorigin="anonymous" src="https://connect.facebook.net/de_DE/sdk.js#xfbml=1

我知道,
react facebook登录
react facebook
存在。尽管如此,我想以我自己的方式实现它,我被困在那里

在my index.html中,我有以下内容:

  <body>
     <div id="fb-root"></div>
     <script async defer crossorigin="anonymous" src="https://connect.facebook.net/de_DE/sdk.js#xfbml=1&version=v5.0&appId=???&autoLogAppEvents=1"></script>
....
当我处于私人浏览器模式并单击它时,登录对话框打开。当我输入我的用户凭据时,它只是存在,什么也没有发生


谁能给我指出正确的方向吗?非常感谢您的帮助。

在URL哈希中嵌入带有参数的SDK,使其在加载后自动初始化,
fbAsyninit
在这种情况下甚至不应再触发。您需要使用其中一种方法—URL哈希参数,或
fbAsyncInit
/
FB.init
—不能同时使用这两种方法,这会带来麻烦。在URL哈希中嵌入带有参数的SDK会使其在加载后自动初始化,
fbAsyncInit
在这种情况下甚至不应再触发。您需要使用其中一种方法—URL哈希参数,或
fbAsyncInit
/
FB.init
—不能同时使用这两种方法,这会带来麻烦。
/* global FB */
import React, { useEffect } from 'react';

export default function Connect() {
  function statusChangeCallback(response) {
    console.log(response);
    if (response.status === 'connected') {
      console.log("logged in");
    } else {
      console.log("not logged in")
    }
  }

  function checkLoginState() {
    window.FB.getLoginStatus(function(response) {
      statusChangeCallback(response);
    });
  }

  useEffect(() => {
    window.fbAsyncInit = function() {
      window.FB.init({
        appId      : '????',
        cookie     : true,
        xfbml      : true,
        version    : 'v5.0',
      });

      window.FB.getLoginStatus(function(response) {   // Called after the JS SDK has been initialized.
        statusChangeCallback(response);        // Returns the login status.
      });
    };

    (function(d, s, id) {
      var js, fjs = d.getElementsByTagName(s)[0];
      if (d.getElementById(id)) return;
      js = d.createElement(s); js.id = id;
      js.src = "https://connect.facebook.net/de_DE/sdk.js#xfbml=1&version=v5.0&appId=????";
      fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));

  });

  return (
      <div
        className="fb-login-button"
        data-width=""
        data-size="large"
        data-button-type="continue_with"
        data-auto-logout-link="false"
        data-use-continue-as="false"
      />
  );
}

Uncaught TypeError: Cannot read property 'toLowerCase' of undefined
    at Object.prepareCall (sdk.js?hash=3051e31de39c8b328cfbd1efcce7f613&ua=modern_es6:145)
...