Google Cloud功能:必需/导出函数throw"处理程序不是函数"错误

时间:2018-05-13 01:19:32

标签: javascript node.js google-cloud-functions

这有效:

// index.js
module.exports = {
  getItems: (req, res) => res.send("Hello, World!")
};

使用functions call getItems进行测试会产生Result: Hello, World!

这不起作用

// getItems.js
exports.getItems = (req, res) => res.send("Hello, World!");

// index.js
let getItems = require('./getItems');

module.exports = {
  getItems
};

使用functions call getItems进行测试会产生Error: TypeError: handler is not a function at app.use.err (/Users...

问题是什么?

1 个答案:

答案 0 :(得分:3)

require()的返回值是一个对象, all 是所需文件中导出的内容(而不仅仅是您导出的文件)。

所以,试试这个:

// index.js
let functions = require('./getItems');

module.exports = {
  functions.getItems
};