小白教程
所有教程
关于
Search
172.70.127.96
172.70.127.96
参数设置
贡献
退出
操作
编辑
移动
保护
信息
历史
删除
查看“React 安装”的源代码
本页内容
上一节:
React_教程
下一节:
React_元素渲染
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
{{DISPLAYTITLE:React 安装}}[[Category:React 教程|2]] = React 安装 = React 可以直接下载使用,下载包中也提供了很多学习的实例。 本教程使用了 React 的版本为 16.4.0,你可以在官网 https://reactjs.org/ 下载最新版。 你也可以直接使用 Staticfile CDN 的 React CDN 库,地址如下: <sample title="" desc="" lang="html" hererun="1"> <script src="https://cdn.staticfile.org/react/16.4.0/umd/react.development.js"></script> <script src="https://cdn.staticfile.org/react-dom/16.4.0/umd/react-dom.development.js"></script> <!-- 生产环境中不建议使用 --> <script src="https://cdn.staticfile.org/babel-standalone/6.26.0/babel.min.js"></script> </sample> 官方提供的 CDN 地址: <sample title="" desc="" lang="html" hererun="1"> <script src="https://unpkg.com/react@16/umd/react.development.js"></script> <script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script> <!-- 生产环境中不建议使用 --> <script src="https://unpkg.com/babel-standalone@6.15.0/babel.min.js"></script> </sample> '''注意:''' 在浏览器中使用 Babel 来编译 JSX 效率是非常低的。 === 使用实例 === 以下实例输出了 Hello, world! == React 实例 == <sample title="" desc="" lang="html" hererun="1"> <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>Hello React!</title> <script src="https://cdn.staticfile.org/react/16.4.0/umd/react.development.js"></script> <script src="https://cdn.staticfile.org/react-dom/16.4.0/umd/react-dom.development.js"></script> <script src="https://cdn.staticfile.org/babel-standalone/6.26.0/babel.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> </sample> <run name=""> <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>Hello React!</title> <script src="https://cdn.staticfile.org/react/16.4.0/umd/react.development.js"></script> <script src="https://cdn.staticfile.org/react-dom/16.4.0/umd/react-dom.development.js"></script> <script src="https://cdn.staticfile.org/babel-standalone/6.26.0/babel.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> </run> '''实例解析:''' 实例中我们引入了三个库: react.development.min.js 、react-dom.development.min.js 和 babel.min.js: * '''react.min.js''' - React 的核心库 * '''react-dom.min.js''' - 提供与 DOM 相关的功能 * '''babel.min.js''' - Babel 可以将 ES6 代码转为 ES5 代码,这样我们就能在目前不支持 ES6 浏览器上执行 React 代码。Babel 内嵌了对 JSX 的支持。通过将 Babel 和 babel-sublime 包(package)一同使用可以让源码的语法渲染上升到一个全新的水平。 <sample title="" desc="" lang="html" hererun="1"> ReactDOM.render( <h1>Hello, world!</h1>, document.getElementById('example') ); </sample> 以上代码将一个 h1 标题,插入 id="example" 节点中。 <blockquote>'''注意:''' 如果我们需要使用 JSX,则 <script> 标签的 type 属性需要设置为 text/babel。 </blockquote> == 通过 npm 使用 React == 如果你的系统还不支持 Node.js 及 NPM 可以参考我们的 [[nodejs tutorial|Node.js 教程]]。 我们建议在 React 中使用 CommonJS 模块系统,比如 browserify 或 webpack,本教程使用 webpack。 国内使用 npm 速度很慢,你可以使用淘宝定制的 cnpm (gzip 压缩支持) 命令行工具代替默认的 npm: <pre> $ npm install -g cnpm --registry=https://registry.npmmirror.com $ npm config set registry https://registry.npmmirror.com </pre> 这样就可以使用 cnpm 命令来安装模块了: <pre> $ cnpm install [name]</pre> 更多信息可以查阅:http://npm.taobao.org/。 == 使用 create-react-app 快速构建 React 开发环境 == create-react-app 是来自于 Facebook,通过该命令我们无需配置就能快速构建 React 开发环境。 create-react-app 自动创建的项目是基于 Webpack + ES6 。 执行以下命令创建项目: <pre> $ cnpm install -g create-react-app $ create-react-app my-app $ cd my-app/ $ npm start </pre> 在浏览器中打开 '''http://localhost:3000/''' ,结果如下图所示: 项目的目录结构如下: <pre> my-app/ README.md node_modules/ package.json .gitignore public/ favicon.ico index.html manifest.json src/ App.css App.js App.test.js index.css index.js logo.svg </pre> manifest.json 指定了开始页面 index.html,一切的开始都从这里开始,所以这个是代码执行的源头。 尝试修改 src/App.js 文件代码: == src/App.js == <sample title="" desc="" lang="html" hererun="1"> import React, { Component } from 'react'; import logo from './logo.svg'; import './App.css'; class App extends Component { render() { return ( <div className="App"> <div className="App-header"> <img src={logo} className="App-logo" alt="logo" /> <h2>欢迎来到小白教程</h2> </div> <p className="App-intro"> 你可以在 <code>src/App.js</code> 文件中修改。 </p> </div> ); } } export default App; </sample> 修改后,打开 http://localhost:3000/ (一般自动刷新),输出结果如下: src/index.js 是一个入口文件,我们可以尝试直接修改 src/index.js 文件代码: <sample title="" desc="" lang="html" hererun="1"> import React from 'react'; import ReactDOM from 'react-dom'; function Hello(props) { return <h1>Hello World!</h1>; } ReactDOM.render(<Hello />, document.getElementById('root')); </sample> 这时候浏览器打开 '''http://localhost:3000/''' 就会输出: <pre>Hello World!</pre>
返回至“
React 安装
”。
上一节:
React_教程
下一节:
React_元素渲染