【发布时间】:2020-04-10 05:41:17
【问题描述】:
使用以下代码:
const functions = require('firebase-functions')
const admin = require('firebase-admin')
admin.initializeApp()
exports.onTest = functions.https.onRequest(async (req, res) => {
res.json({ msg: 'done' })
})
这完全来自example docs,...从cli运行firebase emulators:start会产生以下错误:
⚠ TypeError: instance.registerVersion is not a function
at registerDatabase (/Users/<path>/functions/node_modules/@firebase/database/dist/index.node.cjs.js:15188:14)
at Object.<anonymous> (/Users/<path>/functions/node_modules/@firebase/database/dist/index.node.cjs.js:15200:5)
at Module._compile (module.js:653:30)
at Object.Module._extensions..js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)
at Module.require (module.js:597:17)
at require (internal/module.js:11:18)
at FirebaseNamespace.get [as database] (/Users/tremendus/Development/kulanu/playground/kulanu-cloud/functions/node_modules/firebase-admin/lib/firebase-namespace.js:282:38)
⚠ We were unable to load your functions code. (see above)
SO 和其他网站上的其他几个示例调用 #initializeApp 和 initializeApp(functions.config().firebase) ...但这也会引发相同的错误。
我在本地使用节点 8 函数和节点 8 以及基本的 pacakage.json 依赖项:
"dependencies": {
"firebase-admin": "^8.6.0",
"firebase-functions": "^3.3.0"
}
更新:虽然命令firebase emulators:start 抛出上述错误,但函数在shell中工作:
MacPro:functions: firebase functions:shell
✔ functions: Emulator started at http://localhost:5000
> function: apiOnSave
i functions: Loaded functions: apiOnSave
firebase > apiOnSave()
Sent request to function.
firebase > > function: apiOnSave
RESPONSE RECEIVED FROM FUNCTION: 200, {
"msg": "done"
}
没有人对如何解决这个问题提出建议吗?
【问题讨论】:
-
PS - 这是我函数库中唯一的函数
-
如果您对问题有更新或修改,您可以简单地编辑问题而不是添加评论。
-
如果有明确的复制步骤表明 Firebase CLI 中可能存在错误,请在 Firebase CLI GitHub 上发布问题。 github.com/firebase/firebase-tools
-
@DougStevenson - 我无法在新初始化的项目中重现它......这确实有效。但是,如果我将 firebase 配置文件和函数文件夹从新的初始化文件夹复制到项目文件夹,我仍然会收到错误消息。如果我重新初始化项目文件夹,也会发生同样的情况。是否有任何其他配置文件或缓存可能会影响它在新文件夹中工作的原因,而不是在新初始化的现有文件夹中?
标签: firebase google-cloud-functions firebase-cli