我的项目是基于创建-反应-应用程序。NPM启动或yarn启动默认将在端口3000上运行应用程序,在package.json中没有指定端口的选项。

在这种情况下,如何指定自己选择的端口?我想同时运行这个项目的两个(用于测试),一个在端口3005,另一个是3006


当前回答

方法1

在项目的根目录下创建.env文件

像这样设置

PORT=3005

方法2

在package.json

set PORT=3006 && react-scripts start

其他回答

试试这个:

npm start port=30022

您可以指定一个名为PORT的环境变量来指定服务器将在其上运行的端口。

$ export PORT=3005 #Linux
$ $env:PORT=3005 # Windows - Powershell

如果能够指定不是3000的端口(作为命令行参数或环境变量),那就太好了。

现在,这个过程相当复杂:

运行npm Run eject 等待它完成 编辑scripts/start.js,用你想使用的任何端口找到/替换3000 编辑config/webpack.config.dev.js并执行同样的操作 npm开始

为什么不干脆

PORT=3030 npm run start

您需要更新您的软件包。json来指定不同的PORT

在脚本部分,替换start命令如下:—

确保所提到的PORT可以自由监听

"start": "export PORT=3001;react-scripts开始”

您的应用程序将从http://localhost:3001开始

谢谢