React 安装(CDN)

React 可以直接下载使用,下载包中也提供了很多学习的实例。

本教程使用了 React 的版本为 18.2.0,你可以在官网 https://reactjs.org/ 下载最新版。

使用字节跳动的 React CDN 库,地址如下:

<script src="https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/react/18.2.0/umd/react.production.min.js" ></script>
<script src="https://lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/react-dom/18.2.0/umd/react-dom.production.min.js"></script>
<script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/babel-standalone/6.26.0/babel.min.js" ></script>

使用 Staticfile CDN 的 React CDN 库,地址如下:

<script src="https://cdn.staticfile.org/react/18.2.0/umd/react.development.js"></script> <script src="https://cdn.staticfile.org/react-dom/18.2.0/umd/react-dom.development.js"></script> <!-- 生产环境中不建议使用 --> <script src="https://cdn.staticfile.org/babel-standalone/6.26.0/babel.min.js"></script>

官方提供的 CDN 地址:

<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/[email protected]/babel.min.js"></script>

注意: 在浏览器中使用 Babel 来编译 JSX 效率是非常低的。

使用实例

以下实例输出了 Hello, world!

React 实例

<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>Hello React!</title> <script src="https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/react/18.2.0/umd/react.production.min.js" ></script> <script src="https://lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/react-dom/18.2.0/umd/react-dom.production.min.js"></script> <script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/babel-standalone/6.26.0/babel.min.js" ></script> </head> <body> <div id="example"></div> <script type="text/babel"> // 简单的 React 组件 function App() { return <h1>Hello, React!</h1>; } const root = ReactDOM.createRoot(document.getElementById("example")); // 渲染 React 组件到 DOM root.render(<App />); </script> </body> </html> </script> </body> </html>

尝试一下 »

实例解析:

实例中我们引入了三个库: react.production.min.js 、react-dom.production.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)一同使用可以让源码的语法渲染上升到一个全新的水平。
// 简单的 React 组件 function App() { return <h1>Hello, React!</h1>; } const root = ReactDOM.createRoot(document.getElementById("example")); // 渲染 React 组件到 DOM root.render(<App />);

以上代码将一个 h1 标题,插入 id="example" 节点中。

const root = ReactDOM.createRoot(document.getElementById("example"));
  • 获取 DOM 容器document.getElementById("example") 获取了一个 id 为 "example" 的 DOM 元素。
  • 创建根节点ReactDOM.createRoot 是 React 18 引入的新方法,用于创建一个 React 根节点。在这个例子中,root 变量保存了这个根节点。

注意:

如果我们需要使用 JSX,则 <script> 标签的 type 属性需要设置为 text/babel。