Nau*_*wir 3 javascript firebase reactjs google-cloud-firestore react-hooks
这是我的firebase.js
import { initializeApp } from "firebase/app";
import { getFirestore } from "firebase/firestore";
import { getAuth } from "firebase/auth";
import { getAnalytics, logEvent, isSupported } from "firebase/analytics";
// Update the config
var firebaseConfig = {
// ...Update config
};
// Initialize Firebase
const app = initializeApp(firebaseConfig);
const firestore = getFirestore(app);
const auth = getAuth();
const analytics = getAnalytics(app);
// Uncomment the following if you want to use emulator
// if (process.env.NODE_ENV === "development") {
// firestore.useEmulator("localhost", 8080);
// auth.useEmulator("http://localhost:9099");
// }
export { app, firestore, auth, analytics };
Run Code Online (Sandbox Code Playgroud)
这就是我在我的一个组件中使用它的方式 -
import { app, firestore, auth } from "../../firebase";
const linksPathRef = useMemo(
() => firestore.collection("users").doc(userUid).collection("links"),
[userUid]
);
Run Code Online (Sandbox Code Playgroud)
但我收到firestore.collection is not a function错误。不确定,我哪里出错了。
项目中安装的 firebase 版本"firebase": "^9.6.1"
正如评论者所指出的,您在导入 v9 SDK 时使用的是较旧的 API 语法。
该消息是关于此行的
firestore.collection("users").doc(userUid).collection("links")
Run Code Online (Sandbox Code Playgroud)
在新的模块化语法中,应该是:
collection(firestore, "users", userUid, "links")
Run Code Online (Sandbox Code Playgroud)
我建议再次阅读 Firestore 文档,并查看此升级指南。
| 归档时间: |
|
| 查看次数: |
8069 次 |
| 最近记录: |