![](/img/trans.png)
[英]Deploying cloud functions on cli, “Firebase config variables are not available.”
[英]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-functions
和firebase-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.