Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在React应用程序中处理多个环境_Javascript_Reactjs - Fatal编程技术网

Javascript 如何在React应用程序中处理多个环境

Javascript 如何在React应用程序中处理多个环境,javascript,reactjs,Javascript,Reactjs,我正在做一个小项目,包括react前端和Java后端,有两个环境 我一直在思考如何处理多个环境,我使用axios声明API url: export default axios.create({ baseURL: `http://api.dev.project.local/api/v1`, }); 但这只适用于一种环境,如何在构建包后更改API url?我认为创建两个构建(一个用于开发,一个用于产品)不是一个好的做法,因为这可能会在artifacts manager内部造成混乱(我们使用Az

我正在做一个小项目,包括react前端和Java后端,有两个环境

我一直在思考如何处理多个环境,我使用axios声明API url:

export default axios.create({
  baseURL: `http://api.dev.project.local/api/v1`,
});
但这只适用于一种环境,如何在构建包后更改API url?我认为创建两个构建(一个用于开发,一个用于产品)不是一个好的做法,因为这可能会在artifacts manager内部造成混乱(我们使用Azure Artifacs提要)


如何解决这个问题?

我认为您应该使用环境变量并从项目中创建一个.env文件及其seprate

有关更多信息,您可以

或者你可以使用


我希望它有用。

尝试使用@JosephD。谢谢我来看看:)@JosephD。但是使用webpack会产生同样的结果,对吗?多个软件包,每个都针对不同的环境?@FilipNiko,对。每个环境的不同网页包配置:dev、prod和common。用于生成不同的输出捆绑包。不熟悉Azure,但也许捆绑哈希可以很方便。@JosephD。感谢您的输出,但是如何处理注册表中的版本(工件提要),如果一个可以有不同的API配置,那么我无法将每个包部署到每个环境中…谢谢,这是我们正在尝试实现的一种方法,但是,我不确定这将如何解决多个构建结果的问题?使用different.env文件,或者在第二个解决方案中使用different脚本在开发和生产中进行构建,但这是我想要避免的,我希望所有环境都有一个构建,我不太相信建立幂等性。。。