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

沈阳个人建站模板网站图片计时器怎么做

沈阳个人建站模板,网站图片计时器怎么做,网站配色风格有哪些,网店网站怎么做的在React15及以前, Reconciler采用递归的方式创建虚拟Dom, 但是递归过程不可以中断, 如果组件的层级比较深的话, 递归会占用线程很多时间, 那么会造成卡顿。 为了解决这个问题, React16将递归的无法中断的更新重构为异步的可中断更新, Fiber架构诞生。 文章目录 1.Fiber的结构2…在React15及以前, Reconciler采用递归的方式创建虚拟Dom, 但是递归过程不可以中断, 如果组件的层级比较深的话, 递归会占用线程很多时间, 那么会造成卡顿。 为了解决这个问题, React16将递归的无法中断的更新重构为异步的可中断更新, Fiber架构诞生。 文章目录 1.Fiber的结构2.作为架构来说3.作为静态的数据结构4.作为动态的工作单元 1.Fiber的结构 作为架构来说, 之前React15的Reconciler采用递归的方式执行, 数据保存在递归调用栈中, 称为Stack Reconciler, React16的Reconciler基于Fiber节点实现, 称为Fiber Reconciler。 作为静态的数据结果来说, 每个Fiber节点对应一个组件, 保持了该组件的类型(函数组件/类组件/原生组件)和对应的DOM节点信息。 作为动态的工作单元来说, 每个Fiber节点保持了本次更新中该组件改变的状态, 要执行的工作(需要被删除/被插入页面中/被更新)。 function FiberNode(tag: WorkTag,pendingProps: mixed,key: null | string,mode: TypeOfMode, ) {// 作为静态数据结构的属性this.tag tag;this.key key;this.elementType null;this.type null;this.stateNode null;// 用于连接其他Fiber节点形成Fiber树this.return null;this.child null;this.sibling null;this.index 0;this.ref null;// 作为动态的工作单元的属性this.pendingProps pendingProps;this.memoizedProps null;this.updateQueue null;this.memoizedState null;this.dependencies null;this.mode mode;this.effectTag NoEffect;this.nextEffect null;this.firstEffect null;this.lastEffect null;// 调度优先级相关this.lanes NoLanes;this.childLanes NoLanes;// 指向该fiber在另一次更新时对应的fiberthis.alternate null; }2.作为架构来说 作为架构来说, 每一个Fiber节点对应一个组件, 多个Fiber形成树。 // 指向父级Fiber节点 this.return null; // 指向子Fiber节点 this.child null; // 指向右边第一个兄弟Fiber节点 this.sibling null;function App() {return (divi amspanKaSong/span/div) }对应的Fiber树: 作为一个工作单元, return指节点执行完completeWork后返回的下一个节点。子Fiber节点以及兄弟节点完成工作后返回其父级节点, 故return代替父节点。 3.作为静态的数据结构 // Fiber对应组件的类型 Function/Class/Host... this.tag tag; // key属性 this.key key; // 大部分情况同type某些情况不同比如FunctionComponent使用React.memo包裹 this.elementType null; // 对于 FunctionComponent指函数本身对于ClassCompoent指class对于HostComponent指DOM节点tagName this.type null; // Fiber对应的真实DOM节点 this.stateNode null;4.作为动态的工作单元 // 保存本次更新造成的状态改变相关信息 this.pendingProps pendingProps; this.memoizedProps null; this.updateQueue null; this.memoizedState null; this.dependencies null;this.mode mode;// 保存本次更新会造成的DOM操作 this.effectTag NoEffect; this.nextEffect null;this.firstEffect null; this.lastEffect null;与调度优先级有关的属性: // 调度优先级相关 this.lanes NoLanes; this.childLanes NoLanes;
http://www.zqtcl.cn/news/853637/

相关文章:

  • 福州定制网站开发北京排名seo
  • 地方门户网站开发方案长沙有哪个学校可以学网站建设
  • 建个购物网站水果建设网站前的市场分析
  • 建网站的目的小程序登录代码
  • 南京有名的网站建设公司自学室内装修设计教程
  • 新乡市做网站的公司开发公司简介企业介绍
  • 礼品网站模板淘宝店铺购买交易平台
  • 属于公司的网站怎么做外贸服装网站开发
  • 做暧网站泸州公司做网站
  • 做文库类网站网站所有权 备案
  • 网站开发主要内容站长之家网站查询
  • 网站推广优化排名公司wordpress添加说说
  • 维护一个网站要多少钱企业怎么做网站
  • 怎么做兼职网站成都必去十大网红景点
  • 网站建设如何传视频教程电脑网站设计公司
  • 网站开发培训教程制作网站开发公司
  • 网站前端做报名框代码seo教育培训机构
  • 做网站要学习什么分销网站
  • 镇江市住房和城乡建设局网站常州建设网站
  • 学做美食的网站男女做暖暖到网站
  • 手机的网站建设目标刚做的网站 搜不到
  • 重庆网站建设哪里比较好呢ps怎么做网站logo
  • 网站建设五项基本原则优化关键词的公司
  • 高端网站的特点p2p网站开发的流程
  • 什么网站做外贸最好坪地网站建设公司
  • 做网站费用怎么核算没有公司 接单做网站
  • 如何建设一个优秀的电商网站wordpress注册去掉电子邮件
  • 站长工具 seo综合查询长沙高校网站制作公司
  • 杭州网站定制开发哪家好wordpress重置
  • 哈尔滨市建设安全网站火车头更新wordpress