我正在使用由 JHipster 生成并由 Spring Boot 服务器提供服务的独立 Angular 控制台。我希望根据环境(本地、开发、产品等)提供具有不同属性的应用程序。
我看到很多关于配置每个环境的 webpack 构建的帖子,但我需要直接在我的 Angular 2 4.x 应用程序中指定 URL 和其他数据 - 无论我是在开发中还是在生产中运行应用程序,这些数据都会发生变化。当我们通过 webpack 启动 Angular 时,这种类型的每个环境配置是否可行?
我推荐dotenv-webpack plugin.
webpack.config.js
const Dotenv = require('dotenv-webpack');
...
plugins: [
new Dotenv({
path: './.env'
})
]
.env
URL=http://example.com
ENV=PROD
...
这允许您使用process.env
访问环境变量:
constructor(private http:HttpClient) {
http.get(`${process.env.URL}`).subscribe(t=> {
...
});
}
环境变量在构建时被替换。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)