gpt4 book ai didi

angular - 如何在不重建 Angular 6 的情况下编辑环境变量?

转载 作者:太空狗 更新时间:2023-10-29 17:49:01 25 4
gpt4 key购买 nike

我通常在 environment.ts 文件中设置我的 API URL。我必须将相同的构建部署到具有不同 API URL 的多个客户端。目前我在更改环境变量后进行单独构建。

有没有办法在构建后编辑环境变量,以便我可以为每个客户端提供相同的构建?

最佳答案

我研究了这个问题,这是我不使用 environment.ts

的解决方案

我在 json 文件中定义了全局设置。因为如果我们在 ts 文件中定义,如果在生产模式下构建,则不容易找到常量来更改值。

export class SettingService  {

constructor(private http: HttpClient) {

}



public getJSON(file): Observable<any> {
return this.http.get("./assets/configs/" + file + ".json");
}
public getSetting(){
// use setting here
}
}

在应用程序文件夹中,我添加文件夹 configs/setting.json

setting.json中的内容

{
"baseUrl": "http://localhost:52555"
}

在应用模块中添加APP_INITIALIZER

 {
provide: APP_INITIALIZER,
useFactory: (setting: SettingService) => function() {return setting.getSetting()},
deps: [SettingService],
multi: true
}

通过这种方式,我可以更轻松地更改 json 文件中的 baseUrl 值。

关于angular - 如何在不重建 Angular 6 的情况下编辑环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55626547/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com