首页 > 解决方案 > Angularfire 6为所有功能设置默认云功能区域(位置)

问题描述

如何通过角火全局设置firebase云功能的默认区域,以便将它们部署到指定区域?或者它不必与角火一起使用。我只是不想在.region('')每个函数声明中调用方法。

我在文档中找不到有关如何执行此操作的任何内容。但我听说这应该是可能的。以前版本的 angular fire 应该支持它。

标签: google-cloud-functionsangularfire

解决方案


我是瞎子。它在 angular fire 文档中提到,在适当的章节名称Functions Region下

app.module.ts

import { AngularFireFunctionsModule, REGION } from '@angular/fire/functions';
...
...
    providers: [
      { provide: REGION, useValue: 'asia-northeast1' }
    ]

但这不是正确的答案。我需要将它们部署到正确的区域,我没有想到角火不能做到这一点。

因此,如果您不想在每个函数定义中设置区域,则必须使用全局实用程序为定义添加前缀(?),因此您只能在一个地方进行。

函数-utils.ts

import { region } from 'firebase-functions';

export class FunctionsUtils {

  public static get builder() {
    return region('desired-region-from-possible-options');
  }

}

然后在函数声明中使用它:在index.ts 或其他

import { FunctionsUtils } from './functions-utils';

export const yourFunction = FunctionsUtils.builder.https.onCall(...

可用区域列表


推荐阅读