‘functions.config () no está disponible “con Cloud Functions para Firebase usando Node.JS

Cloud Functions for Firebase se lanzó recientemente y estoy siguiendo las instrucciones de una instalación nueva. Aquí está la página de “Comenzar”.

He instalado “npm install -g firebase-tools” y todos mis archivos están en mi proyecto. Estoy usando WebStorm 2016.3 y Node.JS v6.10.0.

Tengo el inicio de sesión de firebase y las funciones de inicio de firebase instaladas y configuradas también. Mi puesta en marcha. He aquí mi arreglo.

Mi paquete.json

{ "name": "functions", "description": "Cloud Functions for Firebase", "dependencies": { "firebase-admin": "^4.1.2", "firebase-functions": "^0.5" }, "private": true } 

Estas primeras dos líneas de código funcionan.

  const functions = require('firebase-functions'); const admin = require('firebase-admin'); 

Pero entonces cuando bash correr esta línea …

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

Me sale este error.

  Error: functions.config() is not available. Please use the latest version of the Firebase CLI to deploy this function. at init (/Users/.../functions/node_modules/firebase-functions/lib/config.js:46:19) at Object.config (/Users/.../functions/node_modules/firebase-functions/lib/config.js:29:9) at Object. (/Users/.../functions/index.js:11:31) at Module._compile (module.js:570:32) at Object.Module._extensions..js (module.js:579:10) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3) at Module.runMain (module.js:604:10) at run (bootstrap_node.js:394:7) 

¿Que me estoy perdiendo aqui?

Si eres como yo y obtuviste este error al intentar ejecutar tus funciones localmente, obtendrás este error porque functions.config () solo está disponible dentro del tiempo de ejecución de Cloud Functions. Si está intentando probar sus funciones antes de implementar, aquí está el enlace a la documentación sobre cómo hacerlo: https://firebase.google.com/docs/functions/unit-testing#mocking_database_writes

firebase que aún podría tener una versión anterior de la CLI de base de firebase , aunque intentó instalar las nuevas firebase-tools .

Puedes comprobarlo ejecutando firebase --version . Eso debería decir al menos 3.5.0 . Si no es así, querrás ejecutar npm install -g firebase-tools nuevo, lo que con suerte debería arreglar las cosas.

Si su firebase --version sigue mostrando la versión incorrecta, querrá comprobar si accidentalmente tiene instaladas varias versiones de firebase-tools de firebase-tools .

Estaba ejecutando el despliegue de base de fuego desde el directorio equivocado. Esperemos que esto le salve a alguien algún tiempo.