【问题标题】:Cannot read property 'credential' of undefined Facebook Firebase and React-Native无法读取未定义的 Facebook Firebase 和 React-Native 的属性“凭据”
【发布时间】:2018-05-13 19:00:37
【问题描述】:

我正在尝试使用 FBSDKFirebaseRNFirebase 实现 Facebook 登录。

在 iOS 上一切正常,但在 Android 上,标题出现错误:

"Cannot read property 'credential' of undefined"

这是我使用的功能:

export const logintoFB = () => {
  return (dispatch, getState) => {
    return LoginManager.logInWithReadPermissions(['public_profile', 'email']).then((result) => {
        if (result.isCancelled) {
          return Promise.reject(new Error('The user cancelled the request'));        }

        // Retrieve the access token
        return AccessToken.getCurrentAccessToken();
      })
      .then((data) => {
        // Create a new Firebase credential with the token
        console.log(data);
        const credential = firebase.auth().FacebookAuthProvider.credential(data.accessToken)

        // Login with the credential
        console.log(credential);
        return firebase.auth().signInAndRetrieveDataWithCredential(credential);
      })
      .then((user) => {
        dispatch({type: types.LOGIN_STANDARD, credential: user});
      })
      .catch((error) => {
        const { code, message } = error;
        dispatch({type: types.LOGIN_STANDARD_FAILURE, ex: error});
      });
    }
}

请让我知道是否还有其他可以分享的内容以使这一点更清楚。

编辑:最后这在 iOS 上也不起作用。我只是没有连接到 Facebook,这就是我没有收到错误消息的原因。

【问题讨论】:

    标签: android facebook firebase react-native


    【解决方案1】:

    刚刚发现问题:在return firebase.auth().signInAndRetrieveDataWithCredential(credential);这一行 Facebook登录的auth后面没有括号!

    【讨论】:

    • 我对@Kiki 的意思感到非常困惑,但它应该是-auth.FacebookAuthProvider 我正在努力从firebase 迁移到RNFirebase,所以希望这对某人有所帮助
    猜你喜欢
    • 1970-01-01
    • 2018-06-05
    • 1970-01-01
    • 1970-01-01
    • 2019-09-27
    • 2017-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多