gpt4 book ai didi

javascript - undefined 不是对象 firebase.auth.FacebookAuthProvider.credential

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:00:46 28 4
gpt4 key购买 nike

这是我的代码..它非常简单..只是试图让用户通过 facebook 进行身份验证,然后将其添加到 Firebase 系统!我应该提一下,我正在使用 React Native,我确实读到过 Firebase 库的各个部分不适用于 React Native。

const auth = firebase.auth();
const provider = firebase.auth.FacebookAuthProvider;

LoginManager.logInWithReadPermissions(['public_profile'])
.then(loginResult => {

alert("login results")
if (loginResult.isCancelled) {
alert('user canceled');
return;
}
AccessToken.getCurrentAccessToken()
.then(accessTokenData => {
const credential = firebase.auth.FacebookAuthProvider.credential(accessTokenData.accessToken);
alert("Credential: " + credential )
return auth.signInWithCredential(credential);
})
.then(credData => {
console.log(credData);
alert("CRED data:::" + credData)
alert(firebase)
})
.catch(err => {
console.log(err);
alert("ERROR:::" + err)
alert(firebase)

});
});

我真正能想到的唯一原因是 Firebase 未定义或者它没有完成初始化.. 虽然看起来是.. 也许我可以做出某种 promise 以确保它已经初始化。(关于如何做到这一点有什么想法吗?)

虽然 firebase 似乎被初始化了..但我仔细阅读了 api 引用,并不能真正找到 .auth.FacebookAuthProvider.credential 不存在的任何原因

任何帮助都会很棒!

最佳答案

我遇到了这个完全相同的问题,并且我有一个适合我的解决方案,但我不确定它是否对你来说是一样的。

我通过一个单独的模块在一个名为 FirebaseService.js

的文件中实例化了我的 firebase 类
'use-strict';

const firebase = require('firebase');
const APP_BASE = 'https://your-unique-url.firebaseapp.com/'

const FIREBASE_CONFIG = {
apiKey: '[super_unique]',
authDomain: 'your-unique-url.firebaseapp.com',
databaseURL: APP_BASE,
storageBucket: 'your-unique-url.appspot.com',
};

export const Firebase = firebase.initializeApp(FIREBASE_CONFIG);

然后我通过导入它在我的代码中的其他地方使用它:

const { Firebase } = require ('./services/FirebaseService');

在我着手实现 facebook 登录之前,这似乎很好,那时我开始遇到同样的问题。

我不得不在尝试使用 facebook 登录的屏幕中导入 firebase。我没有使用自己的服务,而是使用了 npm 模块:

const firebase = require('firebase'); 

在那之后,我能够访问 FacebookAuthProvider.credential。我真的不确定为什么会这样,可能是我对模块的使用出了问题

关于javascript - undefined 不是对象 firebase.auth.FacebookAuthProvider.credential,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39204923/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com