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

网站建设引擎深圳最新疫情最新消息

网站建设引擎,深圳最新疫情最新消息,网站流程设计,巩义做网站汉狮网络effect.scheduler功能实现 主要先了解scheduler需要实现什么样的需求,有一下四点: 1 通过 effect 的第二个参数给定一个 scheduler 的 fn 2 effect 第一次执行的时候 还会执行 fn 3 当 响应式对象 set update 不执行fn 而是执行 scheduler 4 如果说…

effect.scheduler功能实现

主要先了解scheduler需要实现什么样的需求,有一下四点:

1 通过 effect 的第二个参数给定一个 scheduler 的 fn

2 effect 第一次执行的时候 还会执行 fn

3 当 响应式对象 set update 不执行fn 而是执行 scheduler

4 如果说当执行 runner 的时候 会再次执行 fn

清楚了scheduler需求后,照旧先来看测试案例,通过测试案例来驱动代码开发:

it("scheduler",()=>{// 1 通过 effect 的第二个参数给定一个 scheduler 的 fn// 2 effect 第一次执行的时候 还会执行 fn// 3 当 响应式对象 set update 不执行fn 而是执行 scheduler// 4 如果说当执行 runner 的时候 会再次执行 fnlet dummylet run:anyconst scheduler = jest.fn(()=>{run = runner})const obj = reactive({foo:1})const runner = effect(()=>{dummy = obj.foo},{ scheduler })expect(scheduler).not.toHaveBeenCalled()expect(dummy).toBe(1)obj.foo++expect(scheduler).toHaveBeenCalledTimes(1)run()expect(dummy).toBe(2)})

在测试用例中我们就可以看到,我们往effect中传入了第二个参数options,并且在options中有scheduler函数,所以我们就可以在effect中接受到我们传入的options:

接下来我分别一截图的方式展示增加的代码并且附上解释:

effect实例中存储scheduler:

image.png

当 响应式对象 set update 执行 scheduler

image.png

最后

附上trigger完整代码:

export function trigger(target,key){const depsMap = targetMap.get(target)const dep = depsMap.get(key)for (const effect of dep) {if(effect.scheduler){effect.scheduler()} else {effect.run()}}}

附上effect完整代码:

export function effect(fn,options:any = {}){const _effect = new ReactiveEffect(fn,options.scheduler)_effect.run()return _effect.run.bind(_effect)
}
http://www.ds6.com.cn/news/85448.html

相关文章:

  • 帮别人做网站赚钱吗小型培训机构管理系统
  • 做海报推荐网站百度联盟广告
  • 陵水县建设局网站新闻最近新闻10条
  • wordpress页头导航类目没有链接seo优化平台
  • 模板网站建设教程视频外贸互联网推广的
  • 廊坊网站制作费用深圳整站全网推广
  • 关于网站建设心得体会浙江搜索引擎优化
  • dedecms怎么把一个网站的文章导出导到另一个站里网络营销策略的概念
  • 常熟有没有做网站的企业品牌类网站有哪些
  • 如何做网站二级域名网址导航下载到桌面
  • 一家只做外卖的网站产品推广计划方案模板
  • 济南地区做企业网站的公司关键词seo排名
  • java源代码网站公司网络组建方案
  • 潍坊市建设局网站学会计哪个培训机构比较正规
  • 百度不收录手机网站吗东莞推广
  • 国外html5网站欣赏网络营销类型有哪些
  • 杭州小程序开发定制郑州seo排名哪有
  • 重庆忠县网站建设公司电话文库百度登录入口
  • 江西旅游网站建设方案最新免费网站收录提交入口
  • php美食网站开发的意义东莞网络营销公司
  • 做网站设计制作公司网站排名优化课程
  • 微信小程序代做价格北京网站优化培训
  • 自己做淘宝客网站by网站域名
  • 手机网站前端开发布局技巧新冠咳嗽一般要咳多少天
  • 网站要怎么做的网站seo批量查询工具
  • 做独立销售网站厦门百度seo排名
  • 保定网站建设工作广告加盟
  • 做初中数学题的网站徐州百度运营中心
  • 江苏建站系统厦门seo排名公司
  • 网站备案流程详细云浮网站设计