在“ firebase部署” Google Smart Home Codelab操作时发生错误

时间:2018-07-28 19:31:15

标签: node.js firebase actions-on-google firebase-cli google-smart-home

我试图关注https://codelabs.developers.google.com/codelabs/smarthome-washer/#2

但是在第3步,我被困在 firebase部署上。

第一个错误:

Error: package.json in functions directory has an engines field which is unsupported. The only valid choices are: {"node": "8"} and {"node": "6"}.

将package.json文件更改为使用“ node”:“ 8”后,出现以下错误:

Error: Error occurred while parsing your function triggers.

TypeError: Cannot read property 'databaseURL' of undefined
    at RepoManager.databaseFromApp (/Users/prafulll/code/personal/direkshanProjects/googleAssistant/smarthome-washer/washer-start/functions/node_modules/@firebase/database/dist/index.node.cjs.js:14985:39)
    at Object.instance.INTERNAL.registerService.Reference [as database] (/Users/prafulll/code/personal/direkshanProjects/googleAssistant/smarthome-washer/washer-start/functions/node_modules/@firebase/database/dist/index.node.cjs.js:15526:130)
    at FirebaseAppImpl._getService (/Users/prafulll/code/personal/direkshanProjects/googleAssistant/smarthome-washer/washer-start/functions/node_modules/@firebase/app/dist/index.cjs.js:134:66)
    at FirebaseAppImpl.(anonymous function) [as database] (/Users/prafulll/code/personal/direkshanProjects/googleAssistant/smarthome-washer/washer-start/functions/node_modules/@firebase/app/dist/index.cjs.js:323:31)
    at Object.serviceNamespace [as database] (/Users/prafulll/code/personal/direkshanProjects/googleAssistant/smarthome-washer/washer-start/functions/node_modules/@firebase/app/dist/index.cjs.js:308:32)
    at Object.<anonymous> (/Users/prafulll/code/personal/direkshanProjects/googleAssistant/smarthome-washer/washer-start/functions/index.js:28:30)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)

Having trouble? Try firebase deploy --help

我该怎么办?还是有人知道其他任何资源来学习如何构建Google主页操作?

1 个答案:

答案 0 :(得分:1)

当我在package.json中安装了确切提到的依赖项时,我终于能够进行部署。

我从-

更改了package.json
{
  "name": "functions",
  "description": "Cloud Functions for Firebase",
  "engines": {
    "node": ">=6.11.1"
  },
  "dependencies": {
    "actions-on-google": "^2.1.0",
    "cors": "^2.8.4",
    "firebase": "^4.0.0",
    "firebase-admin": "^5.8.1",
    "firebase-functions": "^0.8.1",
    "google-auth-library": "^0.10.0",
    "googleapis": "^27.0.0"
  },
  "private": true,
  "devDependencies": {
    "eslint": "^4.19.1",
    "eslint-config-google": "^0.9.1"
  }
}

至-

{
  "name": "functions",
  "description": "Cloud Functions for Firebase",
  "engines": {
    "node": ">=6.11.1"
  },
  "dependencies": {
    "actions-on-google": "2.1.0",
    "cors": "2.8.4",
    "firebase": "4.0.0",
    "firebase-admin": "5.8.1",
    "firebase-functions": "0.8.1",
    "google-auth-library": "0.10.0",
    "googleapis": "27.0.0"
  },
  "private": true,
  "devDependencies": {
    "eslint": "4.19.1",
    "eslint-config-google": "0.9.1"
  }
}

将所有的“ ^ 2.1.0”更改为“ 2.1.0”