Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.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 基于环境(dev/prod)REACT处理.env api URL的最佳方法是什么?_Javascript_Reactjs_Environment Variables - Fatal编程技术网

Javascript 基于环境(dev/prod)REACT处理.env api URL的最佳方法是什么?

Javascript 基于环境(dev/prod)REACT处理.env api URL的最佳方法是什么?,javascript,reactjs,environment-variables,Javascript,Reactjs,Environment Variables,以下是我根据当前环境设置不同API URL的方法: 开发和生产,在npm上,指挥安装环境 由于我的URL很长,是否有更优雅的解决方案: Package.json "scripts": { "start": "REACT_APP_BASE_URL=http://test-dev-1323211.us-east-1.elb.amazonaws.com/api/3.0 react-scripts start", "b

以下是我根据当前环境设置不同API URL的方法:

开发和生产,在npm上,指挥安装环境

由于我的URL很长,是否有更优雅的解决方案:

Package.json

"scripts": {
    "start": "REACT_APP_BASE_URL=http://test-dev-1323211.us-east-1.elb.amazonaws.com/api/3.0 react-scripts start",
    "build": "REACT_APP_BASE_URL=http://test-1323211.us-east-1.elb.amazonaws.com/api/3.0 react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject",
    "prepare": "husky install",
 
  },

可以使用dotenv库使用.env文件。 见:

编辑:

从文件中 在.env中添加开发环境变量 要定义永久性环境变量,请在项目根目录中创建一个名为.env的文件:

REACT\u APP\u NOT\u SECRET\u code=abcdef

注意:您必须创建以REACT\u APP\u开头的自定义环境变量。除了NODE_ENV之外的任何其他变量都将被忽略,以避免在机器上意外地公开可能具有相同名称的私钥。更改任何环境变量都需要重新启动正在运行的开发服务器


您可以在CRA文档或DotEnv文档中阅读更多内容

解决方案 基本上,您可以使用.env和.env.development.local来分隔URL

.env:

.env.development.local:

REACT_APP_BASE_URL=http://test-dev-1323211.us-east-1.elb.amazonaws.com/api/3.0

可能重复:链接到其他地方不是一个充分的答案;如果您确定此问题不是重复的,请在您的答案中包含相关信息。感谢您的提醒!
REACT_APP_BASE_URL=http://test-dev-1323211.us-east-1.elb.amazonaws.com/api/3.0