我想在构建生产环境 (ng build --prod
) 时从我的 REST API URL(例如 http://localhost:8080)中删除我的本地服务器前缀。
我知道这与环境文件 environment.prod.ts
有关,但找不到任何使用它们来实现上述目标的示例。
如果有人能帮助我开始,那就太好了!
最佳答案
不要对 URL 进行硬编码。 使用 src/environments 中的 environment.prod.ts 和 environment.ts 文件。 对于本地主机,在 environment.ts 文件中使用一些变量来保存您的 url。
export const environment =
{
production: false,
API_URL: 'http://localhost:8080',
};
用于生产,在 environment.prod.ts 中
export const environment =
{
production: true,
API_URL: 'http://api.productionurl.com',
};
在代码中使用导入变量时,
import { environment } from '../../environments/environment';
....
....
private API_URL= environment.API_URL;
每当您用于生产时,请使用 angular cli 命令选项
ng build --env=prod
当前环境的文件内容将在构建期间覆盖这些内容。
构建系统默认为使用 environment.ts
的开发环境,但如果你这样做
ng build --env=prod
然后将使用 environment.prod.ts
。
可以在 .angular-cli.json
中找到 env 映射到哪个文件的列表。
更多查询请引用, https://angular.io/guide/deployment
关于 Angular CLI : Change REST API URL on build,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47426721/