我正在尝试设置我的开发环境。我在 Windows 10 机器上使用 Angular 5 TypeScript、VisualStudio IDE。我正在使用 Firebase 托管、Firestore 和 Firebase 功能。我正在 TypeScript (index.ts) 文件的“函数”文件夹中编写函数。按照说明在本地测试 Firebase 功能时(https://firebase.google.com/docs/functions/local-emulator)。如链接中所述,我可以通过“firebase serve”和 Functions Shell 在本地服务器上本地运行函数。但是,当我对 index.ts 进行更改时,再次 ping 时该函数不会更新。仅当我执行完整的“firebase 部署功能”命令时才会更新。这违背了拥有本地函数模拟器的目的。这个想法是避免每次更改某些内容时都必须部署该函数。也许,有 firebase.json 的东西?我将它与“ng version”的输出一起复制到下面。
Angular CLI: 1.6.8
Node: 6.11.5
OS: win32 x64
Angular: 5.2.4
... cdk, common, compiler, compiler-cli, core, forms, http
... language-service, material, platform-browser
... platform-browser-dynamic, router
@angular/animations: 5.2.5
@angular/cli: 1.6.8
@angular-devkit/build-optimizer: 0.0.42
@angular-devkit/core: 0.0.29
@angular-devkit/schematics: 0.0.52
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.9.8
@schematics/angular: 0.1.17
typescript: 2.5.3
webpack: 3.10.0
// firebase.json
{
"functions": {
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint",
"npm --prefix \"$RESOURCE_DIR\" run build"
],
"source": "functions"
},
"hosting": {
"public": "dist",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
]
},
"database": {
"rules": "database.rules.json"
}
}