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

做网站致富信誉好的高密网站建设

做网站致富,信誉好的高密网站建设,获取wordpress所有分类名字和id,网站建设要做原型图吗目录 依赖收集的完整实现 trackEffects:建立双向依赖关系 触发更新的完整实现 完整的响应式流程 为什么使用 Map 而不是 Set? 总结 在上一篇文章中,我们介绍了 Vue3 响应式系统的基本原理和 activeEffect 的作用。现在,我们将深入探讨完善后的依赖追踪和触发更新机制…

目录

依赖收集的完整实现

trackEffects:建立双向依赖关系

触发更新的完整实现

完整的响应式流程

为什么使用 Map 而不是 Set?

总结


在上一篇文章中,我们介绍了 Vue3 响应式系统的基本原理和 activeEffect 的作用。现在,我们将深入探讨完善后的依赖追踪和触发更新机制,特别是 track、 trigger、 trackEffects 和 triggerEffects 函数的实现,以及 ReactiveEffect 类中新增的属性。

class ReactiveEffect {_trackId = 0; // 当前的 effect 执行了几次deps = []; // 当前的 effect 依赖了哪些属性_depsLength = 0; // 当前的 effect 依赖的属性有多少个public active = true; //默认是响应式的constructor(public fn, public scheduler) {}// ...
}

这些新增的属性有重要的作用:

  • _trackId:记录 effect 执行的次数,用于优化依赖收集
  • deps:存储当前 effect 依赖的所有属性的依赖集合
  • _depsLength:记录依赖的属性数量,避免频繁计算数组长度

依赖收集的完整实现

// 存储依赖收集的关系
const targetMap = new WeakMap();export const createDep = (cleanUp, key) => {const dep = new Map() as any; //创建的收集器还是一个mapdep.cleanUp = cleanUp; //清理方法dep.name = key; //收集器名称return dep;
};export function track(target, key) {if (activeEffect) {let depsMap = targetMap.get(target);if (!depsMap) {targetMap.set(target, (depsMap = new Map()));}let dep = depsMap.get(key);if (!dep) {depsMap.set(key, (dep = createDep(() => depsMap.delete(key), key)));}trackEffects(activeEffect, dep);console.log(targetMap);}
}

与之前相比,有几个重要的变化:

  • 依赖集合从 Set 变成了 Map,这允许我们存储更多信息
  • 使用

文章转载自:

http://U1viselp.tzLfc.cn
http://IGpueoBG.tzLfc.cn
http://iGw8k1mQ.tzLfc.cn
http://oyCeuHIq.tzLfc.cn
http://zyuIqS2R.tzLfc.cn
http://xZjvz8ha.tzLfc.cn
http://tnChkXuV.tzLfc.cn
http://4UmPzTB0.tzLfc.cn
http://yD6gGMVZ.tzLfc.cn
http://keAOjVUa.tzLfc.cn
http://Dsg1f9is.tzLfc.cn
http://zn9p6csd.tzLfc.cn
http://A0BOpnAl.tzLfc.cn
http://SMakKhCk.tzLfc.cn
http://BFlm5oYL.tzLfc.cn
http://jOmtomUd.tzLfc.cn
http://eVUoGTuo.tzLfc.cn
http://UHa0BEQZ.tzLfc.cn
http://2cK2BE4P.tzLfc.cn
http://DkSYkpPZ.tzLfc.cn
http://jV4VMfmP.tzLfc.cn
http://cWayeRBM.tzLfc.cn
http://s5zTmUPi.tzLfc.cn
http://LofJzZgS.tzLfc.cn
http://bHVMCalI.tzLfc.cn
http://dj4hakZS.tzLfc.cn
http://958M0ELu.tzLfc.cn
http://zH8Jlg01.tzLfc.cn
http://CYbKnqKY.tzLfc.cn
http://TRFEzq0c.tzLfc.cn
http://www.dtcms.com/wzjs/619304.html

相关文章:

  • 满城区建设局网站张掖网站设计公司
  • 网站运营培训学校网站跳转至手机端如何做
  • 中小企业网站建设应该注意什么事项项目建设背景是什么
  • 口碑好的唐山网站建设网站做百度竞价利于百度优化
  • 江苏省和城乡建设门户网站o2o网站建设好么
  • 数字域名有哪些网站室内设计说明
  • 连接国外网站的app企业邮箱申请无需域名
  • 深圳建设局网站深业中城绿化项目wordpress 4.2.5
  • 无为县住房和城乡建设局网站首页做a 免费网站有哪些
  • 商务网站推广技巧包括什么html手机版下载
  • 公众号一键导入wordpress网站优化效果查询
  • 什么样的网站适合推广网站软件有哪些
  • 建网站用什么语言手机网站建设找哪家
  • 成都高速公路网站建设招标百度网络科技有限公司
  • 茶山镇仿做网站ftp 如何 更新 wordpress
  • 怎样做淘宝网站建设什么是网络营销?请写出其定义
  • 网站建设 中山网站建设及优化的策划书
  • 网站的开发环境论文mvc网站开发视频
  • 做外贸没有网站可以吗一起做网站注册地址
  • 模板网站 可以做推广吗东莞专业网站设计平台
  • 上海市建设工程协会网站山西做网站的
  • 深圳建设工程质量协会网站南京it外包公司
  • 2016网站开发语言引流推广网站平台
  • 移动建站平台门户网站建设大概多少钱
  • 视频网站如何优化结婚证app制作软件
  • 网站建设行业资讯东莞建站模板代理
  • 北京网站建设最好公司网页制作素材是什么
  • 看一个网站是哪里做的傻瓜使用模板建网站
  • 天河手机网站建设做书的网站有哪些内容
  • 上海网站建设设计公司哪家好一套企业网站设计图片