我刚开始使用firebase。
我不确定firebase的来龙去脉,基于我模糊的理解,我已经这样配置了我的应用程序。
在Index.js主文件中,我需要
const path = require('path')
const firebaseConfig = require("./src/config/firebaseConfig.js")
const firebaseDb = require("./src/helperFunctions/firebase_db.js")
这里,firebaseConfig是我配置firebase的地方
const firebaseConfigJSON = require("./functions-config.json")
const admin = require("firebase-admin");
admin.initializeApp({
credential: admin.credential.cert(firebaseConfigJSON),
databaseURL: "https://functions-firebase-43a59.firebaseio.com"
})
const db = admin.firestore()
db.settings({ timestampsInSnapshots: true });
module.exports = {
db
}
然后在firebaseDb
中使用该导入的Db
//All the operations at firebase store would be done from here
const firebaseDb = require("./../config/firebaseConfig.js")
firebaseDb.db.collection('users').add({
name: "Rohit Bhatia",
age: "24"
})
.then((response) => {
console.log("this is response", response)
})
.catch((err) => {
console.log("This is error in firebase", err)
})
由于这里的大多数代码都是单例的,所以我一直希望一切顺利,直到我收到以下错误
这是firebase类型错误:路径必须是字符串。已接收未定义
在assertPath(path.js:28:11)
在Object.join(路径.js:1236:7)
在getPath(/Users/anilbhatia/Desktop/google functions/functions/node_modules/dir glob/index.js:6:41)
在globs.concat.map.x(/Users/anilbhatia/Desktop/google functions/functions/node_modules/dir glob/index.js:47:59)
在Array.map()
在module.exports.sync(/Users/anilbhatia/Desktop/google functions/functions/node_modules/dir glob/index.js:47:33)
在globDirs(/Users/anilbhatia/Desktop/google functions/functions/node_modules/globoby/index.js:58:9)
在getPattern(/Users/anilbhatia/Desktop/google functions/functions/node_modules/globoby/index.js:61:64)
在globTasks.reduce(/Users/anilbhatia/Desktop/google functions/functions/node_modules/globby/index.js:107:19)在Array.reduce()
有人能帮我弄清楚我做错了什么吗?或者也许我真的得到了燃烧弹?
我最初的目标是在放入来自api路由的数据之前,通过我的express应用程序在我的firebase中创建一个集合。
尝试运行:npm install firebase-admin@6.4.0
您还可以执行以下操作:npm install
npm run build
(功能文件夹内)
然后是CCD_ 5。
为我修复了它。
我们能够通过添加将dir-glob
恢复到2.0.0
"dir-glob": "2.0.0",
"globby": "8.0.0",
在软件包.jsondependencies
。
你可以用
npm install dir-glob@2.0.0 --save
npm install globby@8.0.0 --save
然后我们删除了node_modules
并运行:npm install
并部署到Firebase
未来谷歌的
确保在firebase.json
文件中有正确的source
路径:
{
"functions": {
"predeploy": "npm run build",
"source": "."
}
}