快速入门 React指南 参考 Flux Tips

发布于 2015-07-12 18:04:34 | 5987 次阅读 | 评论: 3 | 来源: 网络整理

JSFiddle #

开始学习 React 最简单的方式是使用如下JSFiddle的 Hello World例子:

初学者教程包 (Starter Kit) #

开始先下载初学者教程包。

在初学者教程包的根目录,创建一个包含以下内容的 helloworld.html

<!DOCTYPE html>
<html>
  <head>
    <script src="build/react.js"></script>
    <script src="build/JSXTransformer.js"></script>
  </head>
  <body>
    <div id="example"></div>
    <script type="text/jsx">
      React.render(
        <h1>Hello, world!</h1>,
        document.getElementById('example')
      );
    </script>
  </body>
</html>

在 JavaScript 代码里写着 XML 格式的代码称为 JSX;可以去 JSX 语法 里学习更多 JSX 相关的知识。为了把 JSX 转成标准的 JavaScript,我们用 <script type="text/jsx"> 标签包裹着含有 JSX 的代码,然后引入 JSXTransformer.js 库来实现在浏览器里的代码转换。

分离文件 #

你的 React JSX 代码文件可以写在单独的文件里。创建 src/helloworld.js 文件,内容如下:

React.render(
  <h1>Hello, world!</h1>,
  document.getElementById('example')
);

然后在 helloworld.html 引用它:

<script type="text/jsx" src="src/helloworld.js"></script>

离线转换 #

先安装命令行工具(依赖 npm):

npm install -g react-tools

然后将你的 src/helloworld.js 文件转成标准的 JavaScript:

jsx --watch src/ build/

一旦你修改了, build/helloworld.js 文件会自动生成。

React.render(
  React.createElement('h1', null, 'Hello, world!'),
  document.getElementById('example')
);

对照以下内容更新你的 HTML 代码

<!DOCTYPE html>
<html>
  <head>
    <title>Hello React!</title>
    <script src="build/react.js"></script>
    <!-- 不需要JSXTransformer! -->
  </head>
  <body>
    <div id="example"></div>
    <script src="build/helloworld.js"></script>
  </body>
</html>

想要遵循 CommonJS 规范? #

如果你想在使用 React 时,遵循 browserifywebpack 或者或其它兼容CommonJS的模块系统,只要使用 react npm包 即可。而且,jsx 转换工具可以很轻松的地集成到大部分打包系统里(不仅仅是 CommonJS)。

下一步 #

接着学习更多 入门教程 和初学者教程包 examples 目录下的其它例子。

我们还有一个社区开发者共同建设的 Wiki:workflows, UI-components, routing, data management etc.

祝你好运,欢迎来到 React 的世界。

最新网友评论  共有(3)条评论 发布评论 返回顶部
温柔温柔 发布于2016-10-13 15:32:40
魏汝稳
支持(0)  反对(0)  回复
分离文件会报错 发布于2016-01-08 11:24:48
把JSX 提出单独文件后会报错呢?Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.
  • 2楼  Robot 回复于2016-11-03 00:03:49
    这篇已经过时了,jsxtransformer已经被babel取代,建议去看最新的教程
  • 支持(0)  反对(0)  回复

    Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务