Firebase功能部署,但未在控制台中显示

时间:2018-02-27 20:24:14

标签: javascript firebase google-cloud-functions firebase-cli

这个问题与问题44799104基本相同,只是我提供了我的index.js(唯一的答案就是没有帮助,因为我确实包含' exports')。 / p>

简而言之,我已成功部署了我的功能,

Console output

但它没有显示在控制台中。我哪里错了? 这是我的index.js:

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

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

var delayInMilliseconds = 5000;


exports.copyRoom= functions.database.ref('/RoomsOwn/${AuthUid}').onWrite((event) => {

    var uid = event.params.AuthUid;
    console.log('AuthID: ' + uid);
    var object = event.data.val();
    console.log('Whole Object: ', object);

    setTimeout(function() {
    return admin.database.ref('/RoomsOthers/${uid}').set(object);
    }, delayInMilliseconds);

  });

3 个答案:

答案 0 :(得分:9)

当您运行firebase deploy时,您实际上没有部署该功能。如果您已成功部署它,则该功能的名称将出现在Firebase CLI输出中。

请确保:

  1. 实际上使用您尝试部署的功能保存了文件。
  2. 该文件位于正确的目录中。对于JavaScript项目,默认值为functions/index.js
  3. 正在从正确的目录部署正确的项目。

答案 1 :(得分:0)

就我而言,我只需要在部署前将CD插入功能文件夹。请注意,您应该在输出中得到它:

Cloud functions output including function url and a step about packaging and uploading functions folder

答案 2 :(得分:0)

对我来说,问题出在函数的名称上。我的函数名称是 fooBar,但我使用的是 foobar

firebase deploy --only functions:foobar // Incorrect
firebase deploy --only functions:fooBar // Correct