我有一个ES6 / js / react UI和Spring启动服务器端的应用程序。在我的config.js中,我有主机服务器URL和其他基于Env更改的属性。我可以使用spring active profile来获取diff属性集。我如何在js部分做类似的事情? 该应用程序部署为带有嵌入式Tomcat的Spring启动应用程序。
提出这个问题的另一种方法是如何在NodeJs / JavaScript世界中使用等效的Spring配置文件?
答案 0 :(得分:0)
我的建议是使用nodejs创建一个服务器来托管您的静态文件,并充当后端的代理服务器。
最近,我已将this种子用于我的反应项目。我非常喜欢它,它使用webpack构建前端,并为您提供了一个方便的代理服务器,您可以在开发过程中使用它(也可以解决任何CORS问题)。
代理服务器的设置:environments.js
答案 1 :(得分:0)
我和您一样确实需要:如何在spring profile活动环境变量后面使用相同的想法。我使用了process.env:
const profile = process.env.NODEJS_PROFILES_ACTIVE;
我使用Windows和Docker作为环境变量进行了测试。
答案 2 :(得分:0)
我已经实现了以下方法,并且似乎可以正常工作。
设置文件config-dev.js,config-QA.js,config-prod.js。这些文件包含特定于每种环境的配置
Ex config-dev.js
const config_params = {dburl:"mongodb://localhost/mydb", port:5000};
module.exports = config_params
设置文件-config.js,具有以下逻辑
let loadmodule = "./config-" + process.env.profile + ".js";
const setting = require(loadmodule);
module.exports = setting;
在索引文件或server.js中,导入config.js
const config = require('./config.js');
以'profile=dev node server.js'
的身份启动应用程序