索菲娅眨了眨眼,突然问:“你知道vue2和vue3的区别吗?。”
公会长一愣:“什么?”
“首先是生命周期,对于生命周期来说,整体上变化不大,只是大部分生命周期钩子名称上加on,功能是类似的,不过有一点需要注意,Vue3在组合式api中使用生命周期钩子时需要先引入,而vue2在选项api中可以直接调用生命周期钩子。”索菲娅侃侃而谈。
公会长彻底懵了:“委实说,我不是很能明白您的话是什么意思。”
“我也不是很明白。”索菲娅同样一脸懵逼。
她揉了揉眉心:“但我能够感觉到有个可怜的家伙,正试图用这个方法增强记忆,请原谅他。”
公会长苦笑:“此情此景,我们能别谈这些么?”
“好的。”索菲娅点点头:“接下来是多根节点,在vue2中,在模板中如果使用多个根节点时会报错,但是vue3支持多个根节点,也就是fragment。”
公会长额头青筋跳动,有种想打人的冲动。
他看向远方,那恐怖的巨鲸出现后,散发的气息便让天空中的飞龙不敢再有动作。
魔物继续开始登陆,奥古斯塔危在旦夕,而他却在这里听一个人讲胡话。
“接下来是Composition api,vue2是选项api,一个逻辑会散乱在文件不同位置,导致代码可读性变差,当需要修改逻辑时,需要上下来回跳转文件位置。”
“而vue3的组合式api则很好的解决了这个问题,可将同一个逻辑的内容写到一起,增强了代码的可读性,内聚性,其还提供了较为完美的逻辑复用方案。”
“vue3提供Suspense组件,允许程序在等待异步组件加载完成前渲染兜底的内容。使用户的体验更加平滑,使用它需要在模板中声明。”
公会长彻底麻了,声音略微颤抖:“真的,我们可以别再谈什么vue2、vue3之间的差别了么?”
“好的。”索菲娅再次点头:“那你知道vue2和vue3在响应式原理上的差别吗?”
“……,不知道,也不想知道。”
“vue2的响应式原理基础是object.defineProperty,而vue3的响应式原理是proxy。”索菲娅神色淡淡:“你连这个都不知道么?”
“我怎么会知道呢?”公会长感觉自己要抓狂了:“如果我和一个疯子对话,难道我还需要去弄清这个疯子的胡乱言语是什么意思?”
“额,我觉得正常人是不会去找一个疯子认真对话的。”
公会长彻底无语,他无力地摆摆手,站起身来:“我必须要走了,还得去组织民众逃难,这种情况下能逃一个是一个吧……”
“等等。”索菲娅出声叫住了他。
公会长回头,眼中微微亮起希望的光。
“我觉得倾听是相互的,你听我说完,然后我听你说,如何?”索菲娅一脸认真。
公会长眼中的光消失,他面无表情的转身,想要离开,可却被耶梦加得拽住衣领提了回来。
委实说公会长不算弱者,索菲娅查看了他的等级,足有600多级,职业为战士,技能也有十几个,在这种偏远地区算是顶级强者。
可在耶梦加得面前他毫无反抗之力,被摁着坐在了墙头。
“我说了,我得去组织人们逃难了,没时间听你废话。”公会长两眼通红:“伊莎还在公会里等我回去!”
“我还没收到她的信呢,所以我们一会儿一块儿去找她。”索菲娅神色淡淡。
公会长一怔,一脸茫然:“你说什么?什么意思?信?”
“没什么,只是我接的一个小委托罢了,总之在这里继续听我讲话就行,毕竟对着空气讲知识点很没干劲的。”
公会长看了看耶梦加得,意思是你可以对着她讲。
但索菲娅直接摇头:“耶梦是我的小棉袄啊,我怎么忍心让我的小棉袄听这么枯燥乏味的东西呢?”
说着,她将耶梦加得抱在了怀中,像抱着一个抱枕似的。
公会长突然平静下来,他似乎意识到了什么,静静地看向索菲娅。
“你答应了?”
这次轮到索菲娅一脸茫然了:“答应什么?”
公会长这才想起自己什么要求都还没提,就听索菲娅在这里瞎叨叨了。
“总之先听我讲。”索菲娅清了清嗓子,以充满感情的语调,开始朗诵起枯燥无味的内容。
“vue3为何要抛弃Object.defineProperty呢?因为它存在着某些局限性,主要原因是无法监听对象或者数组新增,删除的元素。而proxy是ES6的新特性,通过第二个参数handler拦截目标对象的行为。”
“接着是虚拟dom,vue3相比于vue,在虚拟dom上增加了patchFlag字段,虚拟缓存,vue3的cacheHandler可在第一次渲染后缓存我们的事件,相比于vue2无需每次渲染都传递一个新函数,外加一个click事件。”
公会长已经彻底麻木了,他放空大脑,彻底让自己沉浸在索菲娅的文字轰炸中。
这时,龙吼炮再次蓄力完成,又是一次威力十足的扫射,将海岸上的海鲜们横扫一空。
不过利维坦静默地看着这一切,无喜也无悲。对于他这种级别的存在,所谓低级魔物不过只是一个数字罢了,死伤多少都不心疼。
“vue3与vue2相比,patchFlag帮助diff区分静态节点,以及不同类型的动态节点,一定程度上减少节点本身及属性的对比。”
“打包优化,vue3中针对全局和内部的api进行了重构,,并考虑到tree—shaking的支持,因此,全局api只能作为ES模块构建的名称导出进行访问。”
“好了。”索菲娅拍了拍掌,将神游外物的公会长惊醒:“我本来还想讲一下vue3和react的,不过还是算了。”
公会长面无表情,问:“是因为快到2000字了吗?”
索菲娅尴尬一笑:“差不多……所以你找我什么事?”
公会长深吸一口气:“我已经知道您和这位小姐的身份了。”
索菲娅不以为然:“是么?”
“毕竟名字叫索菲与耶梦,很难不让人想到那位传说中的神祇,索菲娅.塔尔塔洛斯,与她的守护兽尘世巨蟒耶梦加得。”
“所以呢?”
公会长一脸郑重:“我希望您,以终焉之神的身份庇护这座城市。”
索菲娅望向天空,神色淡淡:“委实说我有些意外,你想让我这个司掌毁灭的神,去庇护你们?”
(ps:我现在感觉能一天三更甚至双更,这就是知识的力量。)