https://github.com/davideast/react-ssr-firebase-hosting
主根中有firebase函数index.js
,/functions
目录中不。
但是,如果我这样做并将我的index.js
文件放到主根,如果我firebase deploy --only functions
它在控制台中说:
i deploying functions
Error: functions\index.js does not exist, can't deploy Firebase Functions
问:他怎么可能让它发挥作用?如何从/functions
以外的其他目录中成功完成并部署功能?
由于
firebase.json
{
"hosting": {
"public": "build",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"function": "ssrapp"
}
]
},
"functions": {
"source": "/"
}
}
答案 0 :(得分:13)
使用Firebase CLI创建的项目工作区包含一个名为firebase.json的文件,该文件具有云函数的节,如下所示:
"functions": {
"predeploy": [
"npm --prefix $RESOURCE_DIR run lint"
],
"source": "functions"
}
那"来源" property定义包含将在Cloud Functions上运行的代码的文件夹的名称。您可以将其更改为您想要的任何内容。
答案 1 :(得分:0)
如果要将根目录用作功能文件夹,只需将D
中的source
键更改为.
。
firebase.json
这将在根目录中查找您的 "functions": {
"source": ".",
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint",
"npm --prefix \"$RESOURCE_DIR\" run build"
]
}
文件(请记住也将所有其他文件移动到您的根目录中)。
文档:https://firebase.google.com/docs/functions/manage-functions#deploy_functions