如何在Angular 8、主机URL和API URL中修改Environment.ts变量或常量?

如何在Angular 8、主机URL和API URL中修改Environment.ts变量或常量?,angular,typescript,web-applications,environment,Angular,Typescript,Web Applications,Environment,我在environment.ts中有此代码 export const environment = { production: false, host_name: 'http://local.website.com', api_name: 'http://local.website.com/api', ajax_name: 'http://local.website.com/ajax', }; 一旦应用程序构建完成,我们需要在不进行另一次构建的情况下更改环境设置。

我在environment.ts中有此代码

export const environment = {
    production: false,
    host_name: 'http://local.website.com',
    api_name: 'http://local.website.com/api',
    ajax_name: 'http://local.website.com/ajax',
};
一旦应用程序构建完成,我们需要在不进行另一次构建的情况下更改环境设置。本质上是因为web应用程序与另一个网站耦合,并且后端用户希望在不运行构建的情况下更改这些设置。使用.env根文件已被排除在不安全的情况下,将.json文件保留在资产文件夹中作为唯一选项。 应用程序上还有另一个ts文件,在提供服务时可以毫无问题地读取json,但environment.ts似乎无法读取,可能是因为它是静态的。
任何帮助都将不胜感激。

在我现在工作的公司,他们通过ftp调整设置。因此,它需要读取json文件,并在每次刷新客户端时重写它

按照我共享的url中的说明操作。这对我们有用

编辑:也许您可以使用专门创建的正则表达式记录。 您可以尝试使用属于nodejs的库在
main.bundle.js
中更改它。像这样

export const environment = {
    production: '<<<<PRODUCTION>>>>',
    host_name: '<<<<HOST_NAME>>>>',
    api_name: '<<<<API_NAME>>>>',
    ajax_name: '<<<<AJAX_NAME>>>>',
};
导出常量环境={
制作:'',
主机名:“”,
api_名称:“”,
ajax\u名称:“”,
};

您是否要求动态更改静态文件/生成后不能使用
environment.ts
文件。该文件正在编译并绑定到生产文件中,因此您需要在更改其中的任何值后进行重建。你可以引用,即使数据是从json文件加载的,构建也会在应用程序中编译,而不是引用外部文件?有人告诉我,如果构建完全忽略了资产文件夹,这可以使用。@noririco是的,本质上,这是可能的吗?@t-owens-elas你可以试试谢谢,我试过了,这是一个遗留构建,复杂的解决方案似乎会导致更大的问题。我真正需要做的就是使用ngInit()导入应用程序读取的JSON信息(确实如此),只需将其导入environment.ts即可。我想应该可以了。谢谢你的编辑。看起来是个有趣的解决方案。我不知道如何直接在Node中修改类似的内容。我会调查的。您能给我的任何指导也将不胜感激。