这是没有安装脚手架的情况下
1、在页面中引入React库
可以在官网 https://reactjs.org/ 下载最新版。
也可以直接使用 Staticfile CDN 的 React CDN 库
<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>
官方提供的 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/babel-standalone@6.15.0/babel.min.js"></script>
以上两个都可以使用
2、创建使用实例
在页面中输出Hello,world!
代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</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='app'></div>
<script type='text/babel'>
var a = <h1>Hello, world!</h1>
ReactDOM.render(a,document.getElementById('app'));
</script>
</body>
</html>
以上代码将一个 h1 标题,插入 id="app" 节点中。
注意:如果我们使用 JSX语法,则 <script> 标签的 type 属性需要设置为 text/babel。
3、元素渲染
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</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='app'></div>
<div id='react01'></div>
<script type='text/babel'>
var a = <h1>Hello, world!</h1>
ReactDOM.render(a,document.getElementById('app'));
var r1 = React.createElement('div',{className:'react01'},['vue','react','angular'])
ReactDOM.render(r1,document.getElementById('react01'));
function createElement(type,props,children){
return React.createElement(type,props,children)
}
</script>
</body>
</html>
以上实例通过 调用ReactDOM.render()将数据元素渲染到id=“react01”节点中
React 只会更新必要的部分
需要注意的是 React DOM 首先会比较元素内容先后的不同,而在渲染过程中只会更新改变了的部分。