当前位置: 首页 > news >正文

React原理

函数式编程

  • 一种编程范式,概念比较多
  • 纯函数
  • 不可变值

vdom和diff

  • Vue2.x Vue3.x React 三者实现vdom细节都不同
  • 核心概念和实现思路,都一样

h函数

用来生成vnode的函数

vnode数据结构

{tag: 'div',props: {className: 'div-class'},children: [{tag: 'p',children: '测试'}, ...]
}

patch函数

  • patch(elem, vnode)
  • path(vnode, newVnode)
  • addVnode()
  • removeVnode()
  • updateChildren()

JSX本质

  • JSX等同于Vue模板
  • Vue模板不是html
  • JSX也不是JS
// https://www.babeljs.cn/// // JSX 基本用法
// const imgElem = <div id="div1">
//     <p>some text</p>
//     <img src={imgUrl}/>
// </div>// // JSX style
// const styleData = { fontSize: '30px',  color: 'blue' }
// const styleElem = <p style={styleData}>设置 style</p>// // JSX 加载组件
// const app = <div>
//     <Input submitTitle={onSubmitTitle}/>
//     <List list={list}/>
// </div>// // JSX 事件
// const eventList = <p onClick={this.clickHandler}>
//     some text
// </p&g
http://www.lryc.cn/news/417123.html

相关文章:

  • React-Native优质开源项目
  • Ajax-02
  • 供应商较多的汽车制造业如何选择供应商协同平台?
  • 【开端】JAVA Mono<Void>向前端返回没有登陆或登录超时 暂无权限访问信息组装
  • Python(模块---pandas+matplotlib+pyecharts)
  • 解决使用Navicat连接数据库时,打开数据库表很慢的问题
  • nginx重启报错nginx: [error] invalid PID number
  • 人工智能深度学习系列—深度学习中的相似性追求:Triplet Loss 全解析
  • 26. Hibernate 如何自动生成 SQL 语句
  • 预言机(Oracle machine)
  • 55、PHP实现插入排序、二分查找
  • [Git][分支设计规范]详细讲解
  • c#中winfrom需要了解的
  • 操作系统03:调度算法和文件系统
  • 大量中国高清地图,必须收藏!!
  • 无线领夹麦克风哪个品牌好,2024年收音麦哪个品牌好一点
  • 如何解决.NET8 类库Debug时,Debug文件夹中不包含Packages中引入的文件
  • 域名安全详解
  • 使用gstreamer命令行解析RTSP流
  • 如何基于离线包中“事件热点”进行二次开发
  • 使用继电器实现门电路(1)常用门电路的简化实现
  • 程序员常用单词分类
  • c语言11天笔记
  • 【C++刷题】优选算法——贪心第三辑
  • 9.2 grafana 上导入模板看图并讲解告警
  • python实现自动回复消息
  • Mysql 脚本转换为drawio ER 脚本
  • 基于babylonjs的小游戏 跳一跳
  • 移动端下拉加载更多(h5,小程序)
  • Linux安全与高级应用(二)Linux Web服务器的安全配置与高级应用