繁体   English   中英

部署函数时 Firebase 配置变量不可用错误

[英]Firebase config variables are not available error with deploying functions

当我部署 Firebase 函数时

admin.initializeApp(functions.config().firebase);

Firebase 日志

错误:默认 Firebase 应用不存在。 确保在使用任何 Firebase 服务之前调用 initializeApp()。

但是如果我添加那一行,我会在部署时出错。

>firebase deploy --only functions

错误:

错误:解析函数触发器时出错。 请通过在您的函数文件夹中运行“npm i --save firebase-functions@latest”来确保您拥有最新的 firebase-functions SDK。

错误:Firebase 配置变量不可用。 请使用最新版本的 Firebase CLI 部署此功能。

我已经做了npm i --save firebase-functions@latest没有做任何事情。 由于这个原因,我被卡住了,现在无法做任何事情......如果他们可以帮助我告诉我一些步骤或提示,我会寻求其他任何重新安装。


NPM 和 NodeJS 版本是:

node -v
v8.9.1
npm -v
5.6.0

编辑。 使用管理员权限安装:

npm i --save firebase-functions@latest
npm WARN firebase-functions@0.8.1 requires a peer of firebase-admin@~5.8.1 but none is installed. You must install peer dependencies yourself.

npm ERR! path C:\Users\Telion\firebaseApps\project-name\functions\node_modules\firebase-admin\node_modules\grpc\node_modules\abbrev
npm ERR! code ENOENT
npm ERR! errno -4058
npm ERR! syscall rename
npm ERR! enoent ENOENT: no such file or directory, rename 'C:\Users\Telion\firebaseApps\project-name\functions\node_modules\firebase-admin\node_modules\grpc\node_modules\abbrev' -> 'C:\Users\Telion\firebaseApps\project-name\functions\node_modules\firebase-admin\node_modules\grpc\node_modules\.abbrev.DELETE'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent

实际上,我使用的是 npm 版本 5.5.1,但即使在更新到 5.6.0 之后,我也遇到了完全相同的错误。

firebase-tools@3.17.x中引入了一项重大更改,需要您的项目将firebase-functions升级到最新版本。

但是, firebase-functions@latest也需要firebase-admin@latest (在撰写此答案时firebase-admin@5.11.0 。一旦所有软件包都升级,这个问题应该可以解决。

另一种选择是将全局3.16.0 firebase-tools降级到3.16.0 ,这样您就可以使用较旧的firebase-functionsfirebase-admin软件包。

对我来说,它适用于 firebase-tools6.9.2。 firebase-tools3.16.0 已完全弃用。

我在 Ubuntu 中遇到了同样的问题,这就是我解决它的方法

使用以下sudo npm install -g firebase-tools安装 firebase: sudo npm install -g firebase-tools

还要确保您使用管理员权限启动,例如登录

sudo firebase login

您还需要将节点更新到至少 8.15.x。 该详细信息显示在消息中。

一旦我安装了我必须执行firebase login命令,然后您就可以运行firebase init hosting

以前我在firebase init hosting上遇到错误,但在该节点更新后,它消失了。

希望它有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM