firebase - React Native googleUser.getBasicProfile 不是函数
问题描述
每当我运行代码时,谷歌窗口就会弹出我们,我可以选择帐户。选择帐户后,出现此错误:“googleUser.getBasicProfile 不是函数。”
这是我的代码:
isUserEqual=(googleUser, firebaseUser) =>{
if (firebaseUser) {
var providerData = firebaseUser.providerData;
for (var i = 0; i < providerData.length; i++) {
if (providerData[i].providerId === firebase.auth.GoogleAuthProvider.PROVIDER_ID &&
providerData[i].uid === googleUser.getBasicProfile().getId()) {
// We don't need to reauth the Firebase connection.
return true;
}
}
}
return false;
}
解决方案
在Expo 文档中,我们可以看到函数的返回对象Google.logInAsync
是googleUser
您的方法(我想,因为我在Firebase 文档中与此函数有相同的问题),并注意没有任何方法可以返回 logInAsync 以匹配他。所以我匹配providerData[i].uid
with googleUser.user.id
。
这是重写的代码:
for (var i = 0; i < providerData.length; i++) {
if (providerData[i].providerId === firebase.auth.GoogleAuthProvider.PROVIDER_ID &&
providerData[i].uid === googleUser.user.id) {
return true;
}
}
推荐阅读
- c# - Unity IENumerator 给出意外符号错误和错误“不能是迭代器块,因为 'void' 不是迭代器接口类型。”
- azure - Azure Web 应用部署显示了 hostingstart.html
- django - Django:从 corsheaders 导入错误
- mysql - MySQL对不同的行进行分组以创建组和简单的产品
- python-3.x - 来自:无法在 osx 上读取 /var/mail/jira
- java - 对异步代码进行单元测试是一种好习惯吗?
- git - 如何让单个用户仅访问 BitBucket 上的特定分支?
- node.js - Angular 6 HttpClient - CORS 的问题
- .htaccess - 阻止来自特定 IP 的 POST 请求
- git - 如何防止git commit重命名以点开头的目录