Firebase用于测试和生产的独立firebase.json文件-使用Angular环境文件变量吗?

时间:2018-11-23 11:29:31

标签: angular firebase google-cloud-firestore

Firebase部署的设置-Firestore,托管和云功能-位于firebase.json文件中。 有人知道一种方法来拥有2个单独的firebase.json文件-一个用于测试,另一个用于prod ?还是使用可配置的变量?我的项目是Angular,所以我的第一个想法是使用在构建过程中引用的环境变量-测试和生产。这可能吗?

我的具体目标是使用另一组 firebase.rules进行测试和生产。我想在部署到生产时指定一个firebase.prod.rules文件。这项技术对于更改firebase索引文件或托管test与prod项目之间的差异很有用,因为firebase.json文件中有许多可用的配置选项。

"firestore": {
    "indexes": "firestore.indexes.json",
    "rules": "firestore.rules"
}

1 个答案:

答案 0 :(得分:0)

您可以制作一个配置文件并将其放入您的资产中。

您可以通过将其导入到ngModule中,并使用http来获取字符串的值。

此后,您将构建项目并更改配置文件。现在改回发球区。并且您保留了构建配置文件,永远不要将其再次复制到构建位置。

Dynamic module/service configuration and AOT为例。

public getEnvironment(): Promise<string> { return new Promise<string>(resolve => { let me = this; this.http.get('./config.json') .map(res => res.json()) .toPromise() .then((config) => { resolve(config.url); }); }); }

您的配置文件如下所示:

{"url": ""}