Cloud Functions 模拟器需要安装模块 "firebase-admin"
The Cloud Functions emulator requires the module "firebase-admin" to be installed
继续尝试让 firebase serve
重新工作。我刚刚问了这个问题(并得到了很好的答复,谢谢):
在执行 npm list firebase-admin
时,我现在看到了预期的输出 -- firebase-admin@7.3.0
。
但是firebase serve
还是不行。我明白了:
! Your requested "node" version "6" doesn't match your global version "10"
...
! The Cloud Functions emulator requires the module "firebase-admin" to be installed. This package is in your package.json, but it's not available. You probably need to run "npm install" in your functions directory.
i functions: Your functions could not be parsed due to an issue with your node_modules (see above)
所以firebase serve
仍然没有看到firebase-admin
模块。到底是怎么回事?我该怎么办?
看来这个问题现在与您在本地安装的 Node 版本有关。
我不知道答案,但开始查看节点版本。
在你的 functions/package.json - 可能是你需要指定要使用的节点版本 (https://firebase.google.com/docs/functions/manage-functions):
// functions/package.json
{
"name": ...,
"scripts": ...,
"dependencies": ...,
"engines": {
"node": "10"
}
}
请注意,Node 10 在 Firebase 上仍处于测试阶段。
我看到了同样的事情,看起来你可以 downgrade your firebase-tools version to 6.8.0
npm install firebase-tools@6.8.0 -g
(我已经试过了并且有效)
基本上这意味着您应该降级到 Node 6 或 8,而不是
升级到 10(因为您系统中的节点版本是 10,而 Firebase 正在请求版本 6)。 Firebase 尚不支持 Node 10+ 甚至最新版本 12.15.0
打开终端并进入您的 /myProject/functions 文件夹。
然后,运行 npm install
所有必需的模块都应该出现在 node_modules 文件夹中。
删除 node_module
文件夹。
再次 运行 npm install
,在包含 package.json
的目录中。
这解决了我的问题。
继续尝试让 firebase serve
重新工作。我刚刚问了这个问题(并得到了很好的答复,谢谢):
在执行 npm list firebase-admin
时,我现在看到了预期的输出 -- firebase-admin@7.3.0
。
但是firebase serve
还是不行。我明白了:
! Your requested "node" version "6" doesn't match your global version "10"
...
! The Cloud Functions emulator requires the module "firebase-admin" to be installed. This package is in your package.json, but it's not available. You probably need to run "npm install" in your functions directory.
i functions: Your functions could not be parsed due to an issue with your node_modules (see above)
所以firebase serve
仍然没有看到firebase-admin
模块。到底是怎么回事?我该怎么办?
看来这个问题现在与您在本地安装的 Node 版本有关。
我不知道答案,但开始查看节点版本。
在你的 functions/package.json - 可能是你需要指定要使用的节点版本 (https://firebase.google.com/docs/functions/manage-functions):
// functions/package.json
{
"name": ...,
"scripts": ...,
"dependencies": ...,
"engines": {
"node": "10"
}
}
请注意,Node 10 在 Firebase 上仍处于测试阶段。
我看到了同样的事情,看起来你可以 downgrade your firebase-tools version to 6.8.0
npm install firebase-tools@6.8.0 -g
(我已经试过了并且有效)
基本上这意味着您应该降级到 Node 6 或 8,而不是 升级到 10(因为您系统中的节点版本是 10,而 Firebase 正在请求版本 6)。 Firebase 尚不支持 Node 10+ 甚至最新版本 12.15.0
打开终端并进入您的 /myProject/functions 文件夹。
然后,运行 npm install
所有必需的模块都应该出现在 node_modules 文件夹中。
删除 node_module
文件夹。
再次 运行 npm install
,在包含 package.json
的目录中。
这解决了我的问题。