react学习——02虚拟dom创建的两种方式

1、使用jsx创建虚拟DOM

javascript 复制代码
const vdom = <h1 id="title" className="red"><span>helloReact</span></h1> /*此处一定不要写引号*/
javascript 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
<!--    移动端适配-->
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>1_使用jsx创建虚拟DOM</title>
</head>
<body>
<!--准备一个容器-->
<div id="root"></div>
<!--引入react核心库-->
<script type="text/javascript" src="../js/react.development.js"></script>
<!--引入react-dom.js库,用于支持react操作DOM-->
<script type="text/javascript" src="../js/react-dom.development.js"></script>
<!--引入babel,用于jsx的转换jsx-->
<script type="text/javascript" src="../js/babel.min.js"></script>
<script type="text/babel">/*此处一定要写babel*/
    //1.创建虚拟DOM
    const vdom = <h1 id="title" className="red"><span>helloReact</span></h1> /*此处一定不要写引号*/
    //2.渲染虚拟DOM到页面
    ReactDOM.render(vdom,document.getElementById('root'))
</script>
</body>
</html>

2、使用js创建虚拟DOM

javascript 复制代码
const vdom = React.createElement('h1',{id:'title',className:'red'},React.createElement('span',{},'hello,react'))
javascript 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
<!--    移动端适配-->
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>2_使用js创建虚拟DOM</title>
</head>
<body>
<!--准备一个容器-->
<div id="root"></div>
<!--引入react核心库-->
<script type="text/javascript" src="../js/react.development.js"></script>
<!--引入react-dom.js库,用于支持react操作DOM-->
<script type="text/javascript" src="../js/react-dom.development.js"></script>
<script type="text/javascript">
    //1.创建虚拟DOM
    const vdom = React.createElement('h1',{id:'title',className:'red'},React.createElement('span',{},'hello,react'))
    //2.渲染虚拟DOM到页面
    ReactDOM.render(vdom,document.getElementById('root'))
</script>
</body>
</html>

jsx创建虚拟DOM更加方便代码量更少

相关推荐
承渊政道5 分钟前
Linux网络学习【TCP Socket编程实战:connect的断线重连与客户端访问Linux验证】
linux·网络·学习·ubuntu·tcp·socket编程
qq_408606867 分钟前
确界的倒数性质证明
学习·算法
sunoo-2297 分钟前
嵌入式Linux驱动学习笔记(第3-6天):从misc封装、platform总线到设备树、中断与单总线外设实战
linux·arm开发·驱动开发·笔记·单片机·学习
一木 之林10 分钟前
Agent智能体学习总结:从一次调用到模型自主规划、工具调用与 ReAct 循环的项目实战-6/6
前端·人工智能·学习·react.js
程序员Sunday14 分钟前
React 的 useEffect 怎么工作?依赖数组、清理函数和重复执行如何理解?
前端·javascript
来包番茄沙司31 分钟前
【网盘资源分享】2026新版尚硅谷AI Agent智能体极速版|全套课程资料+面经
人工智能·学习
每天题库1 小时前
塔式起重机安装拆卸工考试题库 真题模拟考前押题精准覆盖
学习·安全·考试·题库·考证
程序员Sunday1 小时前
Vue 3 响应式原理是什么?Proxy、ref 和 reactive 有什么区别?
前端·javascript
mldong1 小时前
一个 npm 包,九页审批中心:Vue3 项目接上工作流引擎
前端·javascript·vue.js
别动我齐刘海10 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人