如何指定一个端口来运行基于 create-react-app 的项目?

新手上路,请多包涵

我的项目基于 create-react-appnpm startyarn start 默认情况下将在 端口 3000 上运行应用程序,并且在 package.json 中没有指定端口的选项。

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

原文由 letthefireflieslive 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.5k
2 个回答

如果您不想设置 环境变量,另一种选择是修改 scripts 部分 package.json 从:

"start": "react-scripts start"

Linux (在 Ubuntu 14.04/16.04 上测试)和 MacOS (在 MacOS Sierra 10.12.4 上由 aswin-s 测试):

"start": "PORT=3006 react-scripts start"

或者(可能是) IsaacPak 提供 的更通用的解决方案

"start": "export PORT=3006 react-scripts start"

Windows JacobEnsor 的解决方案

"start": "set PORT=3006 && react-scripts start"

cross-env lib 在任何地方都可以使用。有关详细信息,请参阅 Aguinaldo Possatto 的 答案

由于我的回答很受欢迎而更新: 目前我更喜欢使用保存在 .env 文件中的环境变量(用于以方便和可读的形式存储不同的变量集 deploy 配置) .如果您仍将机密存储在 *.env 文件中,请不要忘记将 .gitignore 添加到 .env 中。 这里 解释了为什么在大多数情况下使用环境变量更好。 这里 解释了为什么在环境中存储秘密是个坏主意。

原文由 El Ruso 发布,翻译遵循 CC BY-SA 4.0 许可协议

这是完成此任务的另一种方法。

在项目根目录下创建一个 .env 文件并在其中指定端口号。像:

 PORT=3005

原文由 Shahriar Hasan Sayeed 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题