安装
React 可以在各种各样的项目中灵活使用。你既可以使用它创建新的应用,也可以在现有的代码库中逐步引入它,而不需要重写整个项目。
尝试 React
如果你只是感兴趣玩一下 React,可以使用 CodePen。试着从 Hello Wrold例子开始。你不需要安装任何东西;你可以修改代码然后看看它是否工作。
如果你更喜欢使用自己的文本编辑器,你也可以下载这个HTML文件,编辑它,然后从本地在浏览器中打开它。它有一个缓慢的运行时代码转换过程,所以不要在生产中使用。
创建一个单页面应用
Create React App 是开始构建一个新的单页面应用的最好方式。它会配置好你的开发环境,以便于你使用最新的 JavaScript 特性,提供好的开发体验,并为生产环境优化你的应用。
npm install -g create-react-app
create-react-app hello-world
cd hello-world
npm start
Create React App 不处理后端逻辑或数据库;它仅仅创建一个前端构建流程,所以你可以和任何你想用的后端一块使用。它在底层使用 webpack,Babel 和 ESLint,并为你配置好了。
添加 React 到现有的应用
开始使用 React,你不需要重写你的应用。
我们推荐在你应用的一小部分中添加 React,例如一个独立的部件,这样你可以看它是否适用于你的用例。
虽然 React 不需要构建流程也可以被使用,但我们推荐配置它,以使你更有效率。现代的构建流程通常包括:
- 包管理器,例如 Yarn 或 npm。它使你利用第三方包的巨大生态系统,轻松的安装和更新它们。
- 打包器,例如 webpack 或 Browserify。它使你编写模块化代码,一起打包到一个小的包里来优化加载时间。
- 编译器,例如 Babel。它使你编写现代的 JavaScript 代码,却仍然可以在旧的浏览器中运行。
安装 React
我们推荐使用 Yarn 或 npm 来管理前端依赖。如果你对于包管理器是新手,Yarn 文档是一个开始的好地方。
使用 Yarn 安装 React:
yarn add react react-dom
使用 npm 安装 React:
npm install --save react react-dom
Yarn 和 npm 都是从 npm registry 下载包。
使 ES6 和 JSX 可用
我们推荐配合 Babel 使用 React,使你在你的 JavaScript 代码中使用 ES6 和 JSX。ES6 是一套现代 JavaScript 的特性,可以使开发更容易;JSX 是对 JavaScript 语言的扩展,和 React 一起漂亮的工作。
Babel 配置指南说明了怎样在多种不同的构建环境中配置 Babel。确保你安装了babel-preset-react
和 babel-preset-es2015
,并且在.babelrc
中配置它们,好好干吧。
使用ES6 和JSX 写 Hello World
我们推荐使用打包器像 webpack 或 Browserify,这样你可以编写模块化的代码,并一起打包到一个小的包里来优化加载时间。
最小的 React 例子看起来像这样:
import React from 'react';
import ReactDOM from 'react-dom';
ReactDOM.render(
<h1>Hello, world!</h1>,
document.getElementById('root')
);
代码通过root
的id
渲染到一个 DOM 元素内,所以你需要在 HTML 文件中输入<div id="root"></div>
。
同样,你可以在使用其它 javascript UI 库写的现有应用中某处的 DOM 元素内渲染一个 React 组件。
开发和生产版本
默认,React 包含许多有用的警告。这些警告在开发中非常有用。然而,它们会使 React 变大变慢,所以你应该确保在部署应用的时候使用生产版本。
Create React App
如果你使用 Create React App,npm run build
会创建并优化构建你的应用到build
目录中。
Webpack
按照webpack指南中描述的,把DefinePlugin
和UglifyJsPlugin
加入到生产版 Webpack 配置中。
Browserify
通过将 NODE_ENV
变量设置为 production
运行 Browserify,并且使用UglifyJs作为最后构建的步骤以便将仅开发用的代码剥离出去。
使用 CDN
如果你不想用 npm 来管理客户端的包,托管在 CDN 上的react
和react-dom
npm 包也在dist
文件夹提供独立的文件分发。
<script src="https://unpkg.com/react@15/dist/react.js"></script>
<script src="https://unpkg.com/react-dom@15/dist/react-dom.js"></script>
上面的版本仅用于开发,不适合用于生产。压缩并优化的 React 生产版可通过下面获得:
<script src="https://unpkg.com/react@15/dist/react.min.js"></script>
<script src="https://unpkg.com/react-dom@15/dist/react-dom.min.js"></script>
使用版本号代替15
来加载指定版本的react
和react-dom
。如果你使用 Bower,也可通过react
包获取 React。
下一步
Hello Wrold