我想为Firebase创建多个云功能,并从一个项目同时部署它们.我还想将每个函数分成一个单独的文件.目前我可以创建多个函数,如果我将它们都放在index.js中,例如:
exports.foo = functions.database.ref('/foo').onWrite(event => {
...
});
exports.bar = functions.database.ref('/bar').onWrite(event => {
...
});
Run Code Online (Sandbox Code Playgroud)
但是我想将foo和bar放在单独的文件中.我试过这个:
/functions
|--index.js (blank)
|--foo.js
|--bar.js
|--package.json
Run Code Online (Sandbox Code Playgroud)
foo.js在哪里
exports.foo = functions.database.ref('/foo').onWrite(event => {
...
});
Run Code Online (Sandbox Code Playgroud)
和bar.js是
exports.bar = functions.database.ref('/bar').onWrite(event => {
...
});
Run Code Online (Sandbox Code Playgroud)
有没有办法在不将所有函数放在index.js中的情况下完成此操作?
云功能和Firebase功能(或"Firebase的云功能")看起来都一样.请描述每个用例.
两者都使用HTTP功能.
在云功能中:
exports.helloHttp = function helloHttp (req, res) {
res.send(`Hello ${req.body.name || 'World'}!`);
};
Run Code Online (Sandbox Code Playgroud)
并在Firebase功能中:
exports.helloWorld = functions.https.onRequest((request, response) => {
response.send("Hello from Firebase!");
});
Run Code Online (Sandbox Code Playgroud)
这些有什么区别?