PageRenderTime 26ms CodeModel.GetById 17ms RepoModel.GetById 0ms app.codeStats 0ms

/docs/docs/getting-started.zh-CN.md

https://gitlab.com/Blueprint-Marketing/react
Markdown | 148 lines | 107 code | 41 blank | 0 comment | 0 complexity | fe2f51a4e847fbb8318da2b7bf4e195a MD5 | raw file
  1. ---
  2. id: getting-started-zh-CN
  3. title: 入门教程
  4. permalink: getting-started-zh-CN.html
  5. next: tutorial-zh-CN.html
  6. redirect_from: "docs/index-zh-CN.html"
  7. ---
  8. ## JSFiddle
  9. 开始 Hack React 的最简单的方法是用下面 JSFiddle 的Hello Worlds
  10. * **[React JSFiddle](https://jsfiddle.net/reactjs/69z2wepo/)**
  11. * [React JSFiddle without JSX](https://jsfiddle.net/reactjs/5vjqabv3/)
  12. ## 通过 npm 使用 React
  13. 我们建议在 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 包.
  14. ```js
  15. // main.js
  16. var React = require('react');
  17. var ReactDOM = require('react-dom');
  18. ReactDOM.render(
  19. <h1>Hello, world!</h1>,
  20. document.getElementById('example')
  21. );
  22. ```
  23. 在安装 browserify 之后安装 React DOM 和构建你的应用包
  24. ```sh
  25. $ npm install --save react react-dom
  26. $ browserify -t babelify main.js -o bundle.js
  27. ```
  28. ## 不使用 npm 快速开始
  29. If you're not ready to use npm yet, you can download the starter kit which includes prebuilt copies of React and React DOM.
  30. 如果你没有做好使用 npm 的准备你可以下载包含了 React ReactDOM 预生成包的入门教程包
  31. <div class="buttons-unit downloads">
  32. <a href="/react/downloads/react-{{site.react_version}}.zip" class="button">
  33. 下载入门教程 {{site.react_version}}
  34. </a>
  35. </div>
  36. 在入门教程包的根目录创建一个含有如下代码的 `helloworld.html`
  37. ```html
  38. <!DOCTYPE html>
  39. <html>
  40. <head>
  41. <meta charset="UTF-8" />
  42. <title>Hello React!</title>
  43. <script src="build/react.js"></script>
  44. <script src="build/react-dom.js"></script>
  45. <script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23/browser.min.js"></script>
  46. </head>
  47. <body>
  48. <div id="example"></div>
  49. <script type="text/babel">
  50. ReactDOM.render(
  51. <h1>Hello, world!</h1>,
  52. document.getElementById('example')
  53. );
  54. </script>
  55. </body>
  56. </html>
  57. ```
  58. JavaScript 代码里写着 XML 格式的代码称为 JSX可以去 [JSX 语法](/react/docs/jsx-in-depth.html) 里学习更多 JSX 相关的知识为了把 JSX 转成标准的 JavaScript我们用 `<script type="text/babel">` 标签并引入 Babel 来完成在浏览器里的代码转换
  59. ### 分离文件
  60. 你的 React JSX 代码文件可以写在另外的文件里新建下面的 `src/helloworld.js`
  61. ```javascript
  62. ReactDOM.render(
  63. <h1>Hello, world!</h1>,
  64. document.getElementById('example')
  65. );
  66. ```
  67. 然后在 `helloworld.html` 引用该文件
  68. ```html{10}
  69. <script type="text/babel" src="src/helloworld.js"></script>
  70. ```
  71. 注意一些浏览器比如 Chrome 会在使用 HTTP 以外的协议加载文件时失败
  72. ### 离线转换
  73. 先安装[Babel](http://babeljs.io/)命令行工具(依赖 [npm](https://www.npmjs.com/)):
  74. ```
  75. npm install --global babel
  76. ```
  77. 然后把你的 `src/helloworld.js` 文件转成标准的 JavaScript:
  78. ```
  79. babel src --watch --out-dir build
  80. ```
  81. `build/helloworld.js` 会在你对文件进行修改时自动生成 阅读 [Babel CLI 文档](http://babeljs.io/docs/usage/cli/) 了解高级用法。
  82. ```javascript{2}
  83. ReactDOM.render(
  84. React.createElement('h1', null, 'Hello, world!'),
  85. document.getElementById('example')
  86. );
  87. ```
  88. 对照下面更新你的 HTML 代码
  89. ```html{7,11}
  90. <!DOCTYPE html>
  91. <html>
  92. <head>
  93. <meta charset="UTF-8" />
  94. <title>Hello React!</title>
  95. <script src="build/react.js"></script>
  96. <!-- 不需要 Babel! -->
  97. </head>
  98. <body>
  99. <div id="example"></div>
  100. <script src="build/helloworld.js"></script>
  101. </body>
  102. </html>
  103. ```
  104. ## 下一步
  105. 去看看[入门教程](/react/docs/tutorial.html) 和入门教程包 `examples` 目录下的其它例子学习更多
  106. 我们还有一个社区开发者共建的 Wiki[workflows, UI-components, routing, data management etc.](https://github.com/facebook/react/wiki/Complementary-Tools)
  107. 恭喜你欢迎来到 React 的世界