Create React App

通过运行一个命令来建立一个新式的web应用程序

README

Create React App Build Status PRs Welcome


Logo

创建没有构建配置的 React 应用程序。

-创建一个应用程序——如何创建一个新的应用程序。

-用户指南——如何开发使用 Create React App 引导的应用程序。

Create React App 适用于 macOS、Windows 和 Linux。
如果有问题,请提出问题

如果您有任何疑问或需要帮助,请在GitHub 讨论区提问。

快速概览


  1. ```sh
  2. npx create-react-app my-app
  3. cd my-app
  4. npm start
  5. ```

如果您之前已经通过npm install -g create- react-app全局安装了 create-react-app ,我们建议您使用npm uninstall -g create-react-app或yarn global remove create-react-app卸载包以确保npx 始终使用最新版本。

_(npx 随 npm 5.2+ 及更高版本一起提供,请参阅npm 版本的说明)_

然后打开 http://localhost:3000/ 查看您的应用程序。

当您准备好部署到生产环境时,使用npm run build创建一个缩小的包。

npm start


立即开始


不需要安装或配置 webpack 或 Babel 等工具。
它们是预先配置和隐藏的,因此您可以专注于代码。

创建一个项目,你就可以开始了。

创建应用程序


您需要在本地开发机器上安装 Node 14.0.0 或更高版本(但在服务器上不需要)。我们建议使用最新的 LTS 版本。您可以使用nvm (macOS/Linux) 或nvm-windows在不同项目之间切换 Node 版本。

要创建新的应用程序,您可以选择以下方法之一:

npx


  1. ```sh
  2. npx create-react-app my-app
  3. ```

_(npx是NPM 5.2+及更高版本附带的包运行器工具,请参阅旧NPM版本的说明)_

npm


  1. ```sh
  2. npm init react-app my-app
  3. ```

_npm初始化 在 npm 6+_ 中可用

Yarn


  1. ```sh
  2. yarn create react-app my-app
  3. ```

_ yarn create 在 Yarn 0.25+_ 中可用

它将在当前文件夹中创建一个名为“my-app”的目录。
在该目录中,它将生成初始项目结构并安装传递依赖项:

  1. ```
  2. my-app
  3. README.md
  4. node_modules
  5. package.json
  6. .gitignore
  7. public
  8.    favicon.ico
  9.    index.html
  10.    manifest.json
  11. src
  12.      App.css
  13.      App.js
  14.      App.test.js
  15.      index.css
  16.      index.js
  17.      logo.svg
  18.      serviceWorker.js
  19.      setupTests.js
  20. ```
没有配置或复杂的文件夹结构,只有构建应用程序所需的文件。
安装完成后,您可以打开项目文件夹:

  1. ```sh
  2. cd my-app
  3. ```

在新创建的项目中,您可以运行一些内置命令:

npm startyarn start


在开发模式下运行应用程序。

如果您更改代码,页面将自动重新加载。
您将在控制台中看到构建错误和 lint 警告。

Build errors


npm testyarn test


以交互模式运行测试观察器。
默认情况下,运行与自上次提交以来更改的文件相关的测试。


npm run build or yarn build


将用于生产的应用程序构建到 build 文件夹中。
它在生产模式下正确地捆绑了 React,并优化了构建以获得最佳性能。

构建被缩小并且文件名包含hash。

您的应用程序已准备好部署。

用户指南


您可以在其文档中找到有关使用 Create React App 的详细说明和许多技巧。

如何更新到新版本?


有关此信息和其他信息,请参阅用户指南

特性


-一个依赖:只有一个构建依赖。它使用 webpack、Babel、ESLint 和其他令人惊叹的项目,但在它们之上提供了一个有凝聚力的策划体验。

-无需配置:您不需要配置任何东西。为您处理了开发和生产构建的相当好的配置,因此您可以专注于编写代码。

-无锁定:您可以随时“弹出”自定义设置。运行一个命令,所有配置和构建依赖项将直接移动到您的项目中,因此您可以从中断的地方继续。

包括什么?


您的环境将拥有构建现代单页 React 应用程序所需的一切:

- React、JSX、ES6、TypeScript 和 Flow 语法支持。

- ES6 之外的语言附加功能,如对象扩展运算符。

- 自动前缀 CSS,因此您不需要-webkit-或其他前缀。

- 一个快速的交互式单元测试运行器,内置对覆盖率报告的支持。

- 实时开发服务器,警告常见错误。

- 一个构建脚本,用于将 JS、CSS 和图像与哈希和源映射捆绑在一起用于生产。

- 一个离线优先的service worker和一个网络应用程序清单,满足所有渐进式网络应用程序标准。(_注意:从 react-scripts@2.0.0 和更高版本开始,可以选择使用 service worker_)

- 具有单一依赖性的上述工具的无障碍更新。

查看本指南,了解这些工具如何组合在一起的概述。

权衡是这些工具预先配置为以特定方式工作。如果你的项目需要更多的定制,你可以“弹出”并定制它,但是你需要维护这个配置。

受欢迎的选择


Create React App 非常适合:

-在舒适且功能丰富的开发环境中学习 React 。

-启动新的单页 React 应用程序。

-使用 React 为您的库和组件创建示例。

以下是一些您可能想尝试其他方法的常见情况:

- 如果你想在没有数百个传递构建工具依赖项的情况下尝试 React ,请考虑使用单个 HTML 文件或在线沙箱

- 如果您需要将 React 代码与 Rails、Django 或 Symfony 等服务器端模板框架集成,或者如果您不构建单页应用程序,请考虑使用更灵活的nwbNeutrino 。具体对于 Rails,您可以使用Rails Webpacker。对于 Symfony,请尝试Symfony 的 webpack Encore

- 如果你需要发布一个 React 组件nwb可以这样做,还有Neutrino 的 react-components 预设

- 如果您想使用 React 和 Node.js 进行服务器渲染,请查看Next.jsRazzle。Create React App 与后端无关,只生成静态 HTML/JS/CSS 包。

- 如果您的网站大部分是静态的(例如,投资组合或博客),请考虑使用GatsbyNext.js。与 Create React App 不同,Gatsby 在构建时将网站预呈现为 HTML。Next.js 同时支持服务端渲染和预渲染。

- 最后,如果您需要更多定制,请查看Neutrino及其React 预设

上述所有工具都可以在几乎没有配置的情况下工作。

如果您更喜欢自己配置构建,请遵循本指南

React Native


寻找类似的东西,但对于 React Native?

查看世博会 CLI

贡献


我们很乐意在create-react-app上得到您的帮助!有关我们正在寻找的内容以及如何开始的更多信息,请参阅CONTRIBUTING.md 。

支持创建 React App


Create React App 是一个社区维护的项目,所有贡献者都是志愿者。如果您想支持 Create React App 的未来开发,请考虑向我们的Open Collective捐款。

学分


这个项目的存在要感谢所有[贡献](CONTRIBUTING.md) 的人。

感谢Netlify托管我们的文档。

致谢


我们感谢现有相关项目的作者的想法和合作:




执照