firebase - Firebase Firestore 与 Expo v37
问题描述
您好我正在使用 Expo v37 和 Firebase SDK v7.9.0
我的导入看起来像这样:
import * as firebase from 'firebase/app';
import 'firebase/firestore';
import 'firebase/auth';
import { YellowBox } from 'react-native';
import config from '~/config';
firebase.initializeApp(
{
apiKey: config.firebaseApiKey,
authDomain: config.firebaseAuthDomain,
databaseURL: config.firebaseDatabaseURL,
projectId: config.firebaseProjectId,
storageBucket: config.firebaseStorageBucket,
messagingSenderId: config.firebaseMessagingSenderId,
appId: config.firebaseAppId,
measurementId: config.firebaseMeasurementId,
},
);
export default firebase;
export const database = firebase.firestore();
尝试使用 firestore 模块时收到以下错误:
TypeError: firebase.INTERNAL.registerService is not a function. (In 'firebase.INTERNAL.registerService('firestore', function (app) {
return new Firestore(app);
}, shallowCopy(firestoreNamespace))', 'firebase.INTERNAL.registerService' is undefined)
Query.prototype.validateDisjunctiveFilterElements
index.cjs.js:21630:9
registerFirestore
App.bundle?platform=ios&dev=true&minify=false&hot=false:179870:25
<unknown>
App.bundle?platform=ios&dev=true&minify=false&hot=false:179873:20
loadModuleImplementation
require.js:322:6
verb
tslib.js:196:33
loadModuleImplementation
require.js:322:6
<unknown>
App.bundle?platform=ios&dev=true&minify=false&hot=false:155308:14
loadModuleImplementation
require.js:322:6
<unknown>
App.bundle?platform=ios&dev=true&minify=false&hot=false:138892:53
loadModuleImplementation
require.js:322:6
<unknown>
App.bundle?platform=ios&dev=true&minify=false&hot=false:133762:26
loadModuleImplementation
require.js:322:6
<global>
App.js:6
loadModuleImplementation
require.js:322:6
guardedLoadModule
require.js:201:45
downloadUrlHandler
index.cjs.js:1515:5
如果我删除 firestore 导入,一切正常。
这是 Expo 或 Firebase SDK 的错误吗?有人有 Firestore 与 Expo 37 合作吗?
解决方案
使用 Yarn 安装节点模块似乎可以解决这个问题......
推荐阅读
- android - Task.leftShift(Closure) 方法已被弃用,并计划在 Gradle 5.0 中删除
- javascript - 如何在没有 JQuery 的情况下调用 Bootstrap 的折叠方法
- c# - 当名称相似时从一个按钮更改为另一个按钮
- android - 如何将 Fragment 添加为 ConstraintLayout?
- ios - TableView 数组部分自行重新排序?(程序修复?)
- python - 如何向量化一个for循环,对n个数组进行元素乘法?
- android - 进度对话框的 IncrementProgressBy 未按预期工作
- c# - 如何模拟 linq 的 case-when?
- sql - 我需要获取包含图书总数的主题名称
- arrays - 处理 csv 的 UnicodeDecodeError