node.js - 即使关闭终端后,如何为reactjs运行npm start?

标签 node.js reactjs npm

我一直在关注 Facebook 的 ReactJS 教程

我安装了npm install -g create-react-app https://www.npmjs.com/package/react-scripts并用它创建了应用程序

但现在我很困惑如何将我的应用程序部署到例如 digital ocean ?我知道我可以使用 pm2 来运行 Node 服务器,但我不知道 npm start 是如何工作的,因为它只是在 package.json 中运行它

{
  "name": "hello-world",
  "version": "0.1.0",
  "private": true,
  "devDependencies": {
    "react-scripts": "0.7.0"
  },
  "dependencies": {
    "babel-preset-es2015": "^6.18.0",
    "babel-preset-react": "^6.16.0",
    "express": "^4.14.0",
    "mongoose": "^4.6.8",
    "react": "^15.3.2",
    "react-dom": "^15.3.2"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
  }
}

"start": "react-scripts start" 它实际上是从那里开始的?

此外,它还表示要构建要部署的应用程序以使用 npm run build ,它只会为我提供一个名为 build 的文件夹,但我找不到任何要运行的内容 Node 开启。

最佳答案

我建议阅读User Guide因为它回答了许多常见问题。

npm start 启动开发服务器。它仅对开发有用,因此您永远不应该在生产中使用它。这会打印在其输出中。

npm run build 生成一个包含 HTML、CSS 和 JS 文件的静态 build 文件夹。您不需要 Node 来运行它。它是静态的。要提供它,您需要使用任何静态文件服务器。您可以使用 Node、Python、Nginx 或任何可以提供静态文件的文件服务器来完成此操作。这也应该打印在命令的输出中。

部署说明因您的托管提供商而异,但基本上您需要从服务器根提供build输出,然后就完成了。如果您使用客户端路由,您还需要将 Web 服务器配置为提供 index.html 作为任何路径的后备。

用户指南包含针对不同提供商的特定部署说明,因此请查看。

关于node.js - 即使关闭终端后,如何为reactjs运行npm start?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40664707/

相关文章:

javascript - 将 jQuery 插件与 React 集成

找不到 Node.js 模块

node.js - 如何使用 cognito 创建用户帐户,但使用不同的验证服务?

node.js - 是否可以为 Visual Studio Code 智能感知/自动完成定义自定义 npm 注册表?

javascript - 可滚动的 div 粘在底部,当外部 div 的大小发生变化时

reactjs - 从react-beautiful-dnd水平列表中删除单个项目

node.js - 类型错误 : Cannot read property 'headers' of null! MEAN 堆栈

javascript - Javascript 中字符串的正则表达式

node.js - 尝试将 Firebase 版本回滚到 2.X

npm - 在包含多个包的存储库中,每个包的版本应该代表什么?