我尝试使用标准的ng build –prod命令构建一个Angular 5应用程序,并且我想将environment.prod.ts中的基本API-Url设置为依赖于我的process.env变量的值.
这是我的档案:
export const environment = { production: true,apiUrl: `${process.env.BASE_URL}` || 'http://localhost:8070/',};
但是当我尝试构建应用程序时,会发生以下错误:
src / environments / environment.ts中的错误(7,16):错误TS2304:找不到名称“进程”.
在构建应用程序时,如何根据env变量设置API-Url?
在Angular代码的编译时,您将无法访问process.env.
process.env可用于Node应用程序,而Angular应用程序则不能.
你有几个选择:
1)在构建管道中进行某种任务,如果真正需要动态,则使用正确的值更新环境文件.
2)只需硬编码并制作几个环境文件以匹配您的每个环境.您可以在angular-cli.json中指定环境.
选项编号2听起来可能适合您.在这种情况下,你想把它放在你的angular-cli.json中:
"environments": { "dev": "path/to/dev/env","prod": "path/to/prod/env" }
并使用ng build –env = prod构建您的应用程序.
以下是更深入的信息:
https://alligator.io/angular/environment-variables/