firebase2.default.firestore 不是一个函数 - React Firebase
Posted
技术标签:
【中文标题】firebase2.default.firestore 不是一个函数 - React Firebase【英文标题】:firebase2.default.firestore is not a function - React Firebase 【发布时间】:2018-03-24 08:21:31 【问题描述】:我正在尝试在我的 reactjs 应用中使用 firestore。
当我从 firebase 配置对象调用 firestore 时。
上面写着
firebase2.default.firestore 不是函数
这里是代码
import firebase from 'firebase'
const config =
apiKey: "AIzaSxxxxxxqpUeqKXI",
authDomain: "payxxxxxa1.firebaseapp.com",
databaseURL: "https://payxxxxxxxa1.firebaseio.com",
projectId: "payxxxxxxja1",
storageBucket: "payxxxxxa1.appspot.com",
messagingSenderId: "281xxxxxxxx576"
firebase.initializeApp(config)
export const fire = firebase
export const ref = firebase.database().ref()
export const firebaseAuth = firebase.auth
export const messaging = firebase.messaging();
export const db = firebase.firestore();
Firebase 版本是 4.5.0
npm list firebase > firebase@4.5.0
我做错了吗?
【问题讨论】:
我也看到了这个问题,按照你的建议去做并没有解决我的问题。 你能分享你的配置代码吗?也许在 pastebin 中? pastebin.com/Rgs9FVrZ 这是我的代码,与您的 tbh 相比,它看不出有什么问题... 在第二行添加require("firebase/firestore");
。
好的,我没看到。非常感谢您澄清诺曼
【参考方案1】:
如果您使用的是官方的 firebase npm 包,那么您就是这样导入它的。
import firebase from 'firebase';
import 'firebase/firestore';
【讨论】:
【参考方案2】:我通过导入多个库来修复它:firebase 和 firebase/firestore。这是因为 firebase 核心库本身并不包含 firestore 库。所以修复它的完整代码是:
import * as firebase from 'firebase';
import 'firebase/firestore';
【讨论】:
【参考方案3】:ES6:
import '@firebase/firestore'
参考:https://www.npmjs.com/package/@firebase/firestore
【讨论】:
出于某种原因,这对我有用。我将导入更改为import firebase from '@firebase/app';
import '@firebase/firestore';
【参考方案4】:
我已经使用require('firebase/firestore')
解决了这个问题
【讨论】:
以上是关于firebase2.default.firestore 不是一个函数 - React Firebase的主要内容,如果未能解决你的问题,请参考以下文章