【问题标题】:Way to run React development server in a background在后台运行 React 开发服务器的方法
【发布时间】:2022-03-14 13:26:53
【问题描述】:

我想问一下是否有任何方法可以在开发模式下将 React 应用程序作为后台进程运行,这样它就不会占用终端。我学习计算机科学并使用 SSH 连接到学校的 PC。这是我老师要求的方式。作为我的项目,我选择了响应应用程序,遗憾的是,当我的应用程序运行时,我无法使用终端。有什么方法可以在后台进程中运行“npm run start”,这样我仍然可以正常使用终端,以后可能会终止该进程??

我尝试了什么: 在命令中使用 & (不起作用,抛出错误), 下午2点, nohup 命令

非常感谢

【问题讨论】:

    标签: javascript reactjs linux typescript


    【解决方案1】:

    使用终端多路复用器screen

    【讨论】:

      【解决方案2】:

      您可以使用 PM2。

      这个站点有一个使用 React.JS 安装和运行 PM2 的教程: https://dev.to/taufiqtab/deploy-reactjs-production-build-with-pm2-5dfo

      【讨论】:

      • 这实际上解决了这个问题。我只是以错误的方式使用了pm2。谢谢
      【解决方案3】:

      这取决于您使用的终端类型,但通常您可以为 mac 执行 cmd+T 或为 windows 执行 ctrl+T 以打开新的终端选项卡。通过这种方式,您可以在同一个终端中同时执行多项操作。希望这会有所帮助!

      【讨论】:

      • 我相信他正在使用服务器(无头)场景。 PM2 和 Screen 将是一个不错的选择
      【解决方案4】:
      1. npm run start & - 它将在后台运行,但会在屏幕上打印所有信息,您可以按 Ctrl+L 来清理屏幕,然后执行其他作业。
      2. npm run start > /dev/null & - 与上面相同,但只会打印错误信息。
      3. npm run start > /dev/null 2>&1 & - 这个不会打印任何信息。

      当你想结束它时,你可以使用jobs -l查询它的PID然后使用kill + PID杀死它,或者使用fg让它转到前面然后按Ctrl+C 结束进程。

      另一种选择是使用终端多路复用器,如Tmux/screen/Dvtm,但有学习成本。

      【讨论】:

        【解决方案5】:

        使用 pm2 pm2 start "npm start" --name my_react_app

        【讨论】:

          猜你喜欢
          • 2015-01-19
          • 1970-01-01
          • 1970-01-01
          • 2022-07-27
          • 2015-02-23
          • 1970-01-01
          • 2020-03-06
          • 2017-01-28
          • 1970-01-01
          相关资源
          最近更新 更多