我的项目是基于创建-反应-应用程序。NPM启动或yarn启动默认将在端口3000上运行应用程序,在package.json中没有指定端口的选项。
在这种情况下,如何指定自己选择的端口?我想同时运行这个项目的两个(用于测试),一个在端口3005,另一个是3006
我的项目是基于创建-反应-应用程序。NPM启动或yarn启动默认将在端口3000上运行应用程序,在package.json中没有指定端口的选项。
在这种情况下,如何指定自己选择的端口?我想同时运行这个项目的两个(用于测试),一个在端口3005,另一个是3006
当前回答
编辑您的项目/包。json文件。
进入脚本部分。将开始键对应的值更新为以下内容。
"start": "export PORT=4000;react-scripts开始”
现在你的React应用程序将在http://localhost:4000/上运行
注意:您可以使用任何端口号,但最好避免众所周知的端口号,如22,21,80等。
其他回答
你可以使用cross-env来设置端口,它可以在Windows、Linux和Mac上工作。
yarn add -D cross-env
然后是包装。Json的开始链接可以是这样的:
"start": "cross-env PORT=3006 react-scripts start",
您可以在启动应用程序时找到默认端口配置
yourapp/scripts/start.js
向下滚动并将端口更改为您想要的任何端口
const DEFAULT_PORT = parseInt(process.env.PORT, 10) || 4000;
希望这对你有所帮助;)
这里有另一种方法来完成这项任务。
在项目根目录下创建一个.env文件,并指定端口号。如:
PORT=3005
如果能够指定不是3000的端口(作为命令行参数或环境变量),那就太好了。
现在,这个过程相当复杂:
运行npm Run eject 等待它完成 编辑scripts/start.js,用你想使用的任何端口找到/替换3000 编辑config/webpack.config.dev.js并执行同样的操作 npm开始
总之,我们有三种方法来实现这一目标:
设置名为“PORT”的环境变量 修改package.json中“scripts”部分的“start”键 创建一个.env文件,并将PORT配置放在其中
最可移植的方法是最后一种方法。但正如其他帖子所提到的,将.env添加到.gitignore中,以避免将配置上传到公共源存储库。
更多细节:这篇文章