(firebase.firestore 不是函数)尝试在 Firestore 中创建集合时

Posted

技术标签:

【中文标题】(firebase.firestore 不是函数)尝试在 Firestore 中创建集合时【英文标题】:(firebase.firestore is not a function) when trying to create collection in Firestore 【发布时间】:2021-07-10 00:43:14 【问题描述】:

所以我一直在使用 Expo 学习带有 Firebase 的 RN,并且我正在遵循本指南:https://medium.com/swlh/expo-firebase-authentication-cloud-firestore-using-async-await-react-hooks-700920ad4b2b

我正在使用snack.expo,这是整个项目的链接:https://snack.expo.io/@abdulqader98/project_firebaseauth

但是,每当我在应用程序中“注册”新帐户时,我都会收到以下错误: “firebase.firestore 不是函数。(在 'firebase.firestore()' 中。'firebase.firestore' 未定义)”

Firebase 身份验证正常工作,电子邮件和密码已保存,我可以登录,但没有任何用户信息保存到 Firestore。 我已经研究了这个问题几个小时,但没有解决问题。 非常感谢任何帮助。

代码 sn-ps: 键.js:

export default 
 firebaseConfig: 
    apiKey: "AIzaSyDubiJeKCLUUUtzOGGC-sXpZi8t2WgIXIQ",
    authDomain: "car-wash-project-59e08.firebaseapp.com",
    projectId: "car-wash-project-59e08",
    storageBucket: "car-wash-project-59e08.appspot.com",
    messagingSenderId: "849352959520",
    appId: "1:849352959520:web:e5fa4f5ed2d56d24cebe45"
    

firebaseMethods.js(我认为问题出在这附近)

import * as firebase from 'firebase';
import 'firebase/firestore';
import Alert from 'react-native';

export async function registration(email, password, lastName, firstName) 
  try 

    await firebase.auth().createUserWithEmailAndPassword(email, password);
    const currentUser = firebase.auth().currentUser;

    const db = firebase.firestore();
    db.collection('users')
      .doc(currentUser.uid)
      .set(
        email: currentUser.email,
        lastName: lastName,
        firstName: firstName,
      );
   catch (err) 
    Alert.alert('There is something wrong! #1', err.message);
  


export async function signIn(email, password) 
  try 
    await firebase
      .auth()
      .signInWithEmailAndPassword(email, password);
   catch (err) 
    Alert.alert('There is something wrong! #2', err.message);
  


export async function loggingOut() 
  try 
    await firebase.auth().signOut();
   catch (err) 
    Alert.alert('There is something wrong! #3', err.message);
  

【问题讨论】:

您好!您应该使用 expo cli 设置本地开发环境:docs.expo.io/get-started/installation - 由于环境的某些限制,有时库在小吃中的工作效果不佳 @brentvante 非常感谢!效果很好。 【参考方案1】:

您应该使用 expo cli 设置本地开发环境:docs.expo.io/get-started/installation。有时,由于环境的限制,图书馆在零食方面的表现并不好。

【讨论】:

以上是关于(firebase.firestore 不是函数)尝试在 Firestore 中创建集合时的主要内容,如果未能解决你的问题,请参考以下文章

尝试初始化 Cloud Firestore 时,firebase.firestore() 不是函数

Vue Firebase firebase/auth 不工作,但 firebase/firestore 工作正常。 “身份验证不是函数”

firebase firestore 在事务中添加新文档-transaction.add 不是函数

匿名身份验证用户的这个 Firebase/Firestore 安全规则是不是安全?

SwiftUI Firebase Firestore 查询函数

Firebase firestore 云函数显示错误:无效使用类型“未定义”作为 Firestore 参数