--- id: getting-started-zh-CN title: 入门教程 permalink: getting-started-zh-CN.html next: tutorial-zh-CN.html redirect_from: "docs/index-zh-CN.html" --- ## JSFiddle 开始 Hack React 的最简单的方法是用下面 JSFiddle 的Hello Worlds: * **[React JSFiddle](https://jsfiddle.net/reactjs/69z2wepo/)** * [React JSFiddle without JSX](https://jsfiddle.net/reactjs/5vjqabv3/) ## 通过 npm 使用 React 我们建议在 React 中使用 CommonJS 模块系统,比如 [browserify](http://browserify.org/) 或 [webpack](https://webpack.github.io/)。使用 [`react`](https://www.npmjs.com/package/react) 和 [`react-dom`](https://www.npmjs.com/package/react-dom) npm 包. ```js // main.js var React = require('react'); var ReactDOM = require('react-dom'); ReactDOM.render( <h1>Hello, world!</h1>, document.getElementById('example') ); ``` 在安装 browserify 之后安装 React DOM 和构建你的应用包。 ```sh $ npm install --save react react-dom $ browserify -t babelify main.js -o bundle.js ``` ## 不使用 npm 快速开始 If you're not ready to use npm yet, you can download the starter kit which includes prebuilt copies of React and React DOM. 如果你没有做好使用 npm 的准备,你可以下载包含了 React 和 ReactDOM 预生成包的入门教程包。 <div class="buttons-unit downloads"> <a href="/react/downloads/react-{{site.react_version}}.zip" class="button"> 下载入门教程 {{site.react_version}} </a> </div> 在入门教程包的根目录,创建一个含有如下代码的 `helloworld.html`。 ```html <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>Hello React!</title> <script src="build/react.js"></script> <script src="build/react-dom.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23/browser.min.js"></script> </head> <body> <div id="example"></div> <script type="text/babel"> ReactDOM.render( <h1>Hello, world!</h1>, document.getElementById('example') ); </script> </body> </html> ``` 在 JavaScript 代码里写着 XML 格式的代码称为 JSX;可以去 [JSX 语法](/react/docs/jsx-in-depth.html) 里学习更多 JSX 相关的知识。为了把 JSX 转成标准的 JavaScript,我们用 `<script type="text/babel">` 标签,并引入 Babel 来完成在浏览器里的代码转换。 ### 分离文件 你的 React JSX 代码文件可以写在另外的文件里。新建下面的 `src/helloworld.js`。 ```javascript ReactDOM.render( <h1>Hello, world!</h1>, document.getElementById('example') ); ``` 然后在 `helloworld.html` 引用该文件: ```html{10} <script type="text/babel" src="src/helloworld.js"></script> ``` 注意一些浏览器(比如 Chrome )会在使用 HTTP 以外的协议加载文件时失败。 ### 离线转换 先安装[Babel](http://babeljs.io/)命令行工具(依赖 [npm](https://www.npmjs.com/)): ``` npm install --global babel ``` 然后把你的 `src/helloworld.js` 文件转成标准的 JavaScript: ``` babel src --watch --out-dir build ``` `build/helloworld.js` 会在你对文件进行修改时自动生成。 阅读 [Babel CLI 文档](http://babeljs.io/docs/usage/cli/) 了解高级用法。 ```javascript{2} ReactDOM.render( React.createElement('h1', null, 'Hello, world!'), document.getElementById('example') ); ``` 对照下面更新你的 HTML 代码 ```html{7,11} <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>Hello React!</title> <script src="build/react.js"></script> <!-- 不需要 Babel! --> </head> <body> <div id="example"></div> <script src="build/helloworld.js"></script> </body> </html> ``` ## 下一步 去看看[入门教程](/react/docs/tutorial.html) 和入门教程包 `examples` 目录下的其它例子学习更多。 我们还有一个社区开发者共建的 Wiki:[workflows, UI-components, routing, data management etc.](https://github.com/facebook/react/wiki/Complementary-Tools) 恭喜你,欢迎来到 React 的世界。