我的项目是基于创建-反应-应用程序。NPM启动或yarn启动默认将在端口3000上运行应用程序,在package.json中没有指定端口的选项。
在这种情况下,如何指定自己选择的端口?我想同时运行这个项目的两个(用于测试),一个在端口3005,另一个是3006
我的项目是基于创建-反应-应用程序。NPM启动或yarn启动默认将在端口3000上运行应用程序,在package.json中没有指定端口的选项。
在这种情况下,如何指定自己选择的端口?我想同时运行这个项目的两个(用于测试),一个在端口3005,另一个是3006
当前回答
方法1
在项目的根目录下创建.env文件
像这样设置
PORT=3005
方法2
在package.json
set PORT=3006 && react-scripts start
其他回答
总之,我们有三种方法来实现这一目标:
设置名为“PORT”的环境变量 修改package.json中“scripts”部分的“start”键 创建一个.env文件,并将PORT配置放在其中
最可移植的方法是最后一种方法。但正如其他帖子所提到的,将.env添加到.gitignore中,以避免将配置上传到公共源存储库。
更多细节:这篇文章
对于我的windows朋友们,我发现了一种改变ReactJS端口的方法,可以在任何你想要的端口上运行。在运行服务器之前,请转到
node_modules/react-scripts/scripts/start.js
在其中,搜索下面的行并将端口号更改为所需的端口
var DEFAULT_PORT = process.env.PORT || *4000*;
这样就可以开始了。
在espackage旁边的主目录中创建一个名为.env的文件。将PORT变量设置为所需的端口号。
例如:
.env
PORT=4200
您可以在这里找到该操作的文档:https://create-react-app.dev/docs/advanced-configuration
在你的包裹里。在脚本中使用——port 4000或set port =4000,如下例所示:
包中。json (Windows):
"scripts": {
"start": "set PORT=4000 && react-scripts start"
}
包中。json (Ubuntu):
"scripts": {
"start": "export PORT=4000 && react-scripts start"
}
您可以指定一个名为PORT的环境变量来指定服务器将在其上运行的端口。
$ export PORT=3005 #Linux
$ $env:PORT=3005 # Windows - Powershell