Firebase功能问题?

时间:2018-05-13 08:21:06

标签: firebase google-cloud-functions

  

我的功能:准备模拟功能。   警告:您使用的是Node.js v8.10.0,但Google Cloud Functions仅支持v6.11.5。

     

⚠功能:无法加载功能源代码。通过在函数目录中运行npm i --save firebase-functions确保您拥有最新的SDK。

     

⚠功能:模拟器出错。解析触发器时出错:找不到模块'/ home / developer / Development / host2 / functions'

     

在部署之前尝试在您的函数目录中运行“npm install”。

我们是firebase功能的新手,如何解决这个问题?

4 个答案:

答案 0 :(得分:4)

在许多情况下,新功能和错误修复仅适用于最新版本的Firebase CLI和firebase-functions SDK。在Firebase项目的functions文件夹中使用这些命令频繁更新Firebase CLI和SDK是一个很好的做法:

npm install -g firebase-tools
npm install firebase-functions@latest firebase-admin@latest --save

访问:https://firebase.google.com/docs/functions/get-started

答案 1 :(得分:0)

我也有这个问题。我无法解释如何,但事实证明我的firebase.json不正确。检查它的功能部分,确保它看起来像这样:

"functions": {
    "source": "functions"
},

找到了这个答案:How to deploy functions from other directory than '/functions'?

答案 2 :(得分:0)

在我的情况下,解决方案是:

1-重新安装节点(版本10.15.0)。从node.org下载node-v8.11.2-x64.msi后

2-重新安装firebase-tools(npm install firebase-tools -g)

3-清除缓存(npm cache clear --force)

答案 3 :(得分:0)

我不知道我的问题是否与您的相同,但为进一步参考,我将发布解决方案。

在我的情况下,我使用的是TypeScript而不是JavaScript,因此在运行firebase serve之前需要先编译代码。

在您的Firebase应用程序目录中:

$ cd functions/
$ npm run-script build
$ cd ..
$ firebase serve

最后一条命令可能需要超级用户权限,因此sudo firebase serve

或者,如果您使用的是npm run-script lint,则可以在npm run-script build之前运行tslint来检查可能的错误。