【React学习】—虚拟DOM两种创建方式(二)

简介: 【React学习】—虚拟DOM两种创建方式(二)

一、Hello React案例

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>hello react</title>
  </head>
  <body>
    <!-- 准备好一个容器 -->
    <div id="test"></div>
    <!-- 引入react核心库 -->
    <script src="../js/react.development.js"></script>
    <!-- 引入react-dom支持react操作dom -->
    <script src="../js/react-dom.development.js"></script>
    <!-- 引入Bable 用于将jsx转化为js -->
    <script src="../js/babel.min.js"></script>
    <!-- 此处一定要写Bable -->
    <script type="text/babel">
      //创建虚拟DOM
      const VDOM = <h1>Hello,React</h1>;
      //渲染虚拟DOM
      ReactDOM.render(VDOM,document.getElementById('test'))
    </script>
  </body>
</html>

二、虚拟DOM的两种创建方式

使用jsx创建虚拟DOM

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>使用jsx创建</title>
  </head>
  <body>
    <!-- 准备好一个容器 -->
    <div id="test"></div>
    <!-- 引入react核心库 -->
    <script src="../js/react.development.js"></script>
    <!-- 引入react-dom支持react操作dom -->
    <script src="../js/react-dom.development.js"></script>
    <!-- 引入Bable 用于将jsx转化为js -->
    <script src="../js/babel.min.js"></script>
    <!-- 此处一定要写Bable -->
    <script type="text/babel">
      //创建虚拟DOM
      const VDOM = <h1 id="title">Hello,React</h1>;
      //渲染虚拟DOM
      ReactDOM.render(VDOM,document.getElementById('test'))
    </script>
  </body>
</html>

使用js创建虚拟DOM

<script type="text/javascript">
      //创建虚拟DOM
     const VDOM=React.createElement('h1',{id:'title'},'Hello React')
      //渲染虚拟DOM
      ReactDOM.render(VDOM,document.getElementById('test'))
    </script>

三、虚拟DOM和真实DOM的对比

  • 本质是Object类型的对象(一般对象)
  • 虚拟DOM比较轻,真实DOM比较重,因为虚拟DOM是React内部在用
  • 虚拟DOM最终会被React转化为真实DOM,呈现在页面上


相关文章
|
3月前
|
JavaScript 前端开发 算法
React技术栈-虚拟DOM和DOM diff算法
这篇文章介绍了React技术栈中的虚拟DOM和DOM diff算法,并通过一个实际案例展示了如何使用React组件和状态管理来实现动态更新UI。
46 2
|
4月前
|
JavaScript 前端开发 算法
react中虚拟dom和diff算法
在React中,虚拟DOM(Virtual DOM)和Diff算法是两个核心概念,它们共同工作以提高应用的性能和效率。
46 4
|
3月前
|
JavaScript 前端开发
react学习(3)创建虚拟dom的两种方式
react学习(3)创建虚拟dom的两种方式
172 67
|
2月前
|
JavaScript 前端开发 算法
React 虚拟 DOM 深度解析
【10月更文挑战第5天】本文深入解析了 React 虚拟 DOM 的工作原理,包括其基础概念、优点与缺点,以及 Diff 算法的关键点。同时,分享了常见问题及解决方法,并介绍了作者在代码/项目上的成就和经验,如大型电商平台的前端重构和开源贡献。
65 3
|
3月前
|
XML JavaScript 前端开发
学习react基础(1)_虚拟dom、diff算法、函数和class创建组件
本文介绍了React的核心概念,包括虚拟DOM、Diff算法以及如何通过函数和类创建React组件。
34 3
|
3月前
|
JavaScript 前端开发
react字符串转为dom标签,类似于Vue中的v-html
本文介绍了在React中将字符串转换为DOM标签的方法,类似于Vue中的`v-html`指令,通过使用`dangerouslySetInnerHTML`属性实现。
108 0
react字符串转为dom标签,类似于Vue中的v-html
|
2月前
|
JavaScript 前端开发 容器
js之dom学习
js之dom学习
46 0
|
4月前
|
编解码 JavaScript 前端开发
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
137 1
|
4月前
|
JavaScript 前端开发 容器
React基础入门之虚拟dom【一】
【8月更文挑战第14天】React基础入门之虚拟dom
45 0
React基础入门之虚拟dom【一】
|
4月前
|
JavaScript 前端开发
React——虚拟DOM创建的两种方式【二】
React——虚拟DOM创建的两种方式【二】
35 0