吹 React Hooks,垃圾!

广告位招租
扫码页面底部二维码联系

React Hooks 中不乏一些优秀的【未经授权禁止转载】【本文首发于唐霜的博客】思想,例如通过第二个参数告知 hooks【版权所有】唐霜 www.tangshuang.net【作者:唐霜】 函数依赖,当依赖发生变化的时候,才会执【原创内容,转载请注明出处】【访问 www.tangshuang.net 获取更多精彩内容】行对应的处理。这在之前使用 reselect 中早就体验过,不是什么高深的技术。但莫名其妙的,Ho【访问 www.tangshuang.net 获取更多精彩内容】未经授权,禁止复制转载。oks 被吹上了天,认为它是下一代数据管【访问 www.tangshuang.net 获取更多精彩内容】本文版权归作者所有,未经授权不得转载。理方式,我只想送一个字:呸!

【版权所有】唐霜 www.tangshu【原创不易,请尊重版权】【原创内容,转载请注明出处】ang.net著作权归作者所有,禁止商业用途转载。

我唯一觉得 Hooks 有些价值的,是官【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。方博客中提到一点:有利于打包时,让产出物未经授权,禁止复制转载。【原创不易,请尊重版权】文件体积更小。这是个事实,因为压缩程序可【本文首发于唐霜的博客】【版权所有】唐霜 www.tangshuang.net以用 a() 替换一个命名超长的函数,比原创内容,盗版必究。【本文受版权保护】方 IwillFuckYouReactH未经授权,禁止复制转载。【本文受版权保护】ooksFunction(),而如果这个本文作者:唐霜,转载请注明出处。本文作者:唐霜,转载请注明出处。函数名是一个 class 的方法名,则无本文作者:唐霜,转载请注明出处。【版权所有】唐霜 www.tangshuang.net法被优化(理论上是可以被优化的,对于私有【版权所有,侵权必究】【访问 www.tangshuang.net 获取更多精彩内容】方法,如果确保知会在当前 class 中【本文受版权保护】【未经授权禁止转载】使用,那么优化成 _a() 也完全没有问原创内容,盗版必究。【转载请注明来源】题,因为外部不可能用到嘛)。而 Reac【本文首发于唐霜的博客】【本文首发于唐霜的博客】t.Component 的生命周期函数莫【本文首发于唐霜的博客】【关注微信公众号:wwwtangshuangnet】名其妙整那么长,刚入门的同学背都要背半天著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】,就是罪魁祸首。

【访问 www.tangshuang.n本文版权归作者所有,未经授权不得转载。【访问 www.tangshuang.net 获取更多精彩内容】et 获取更多精彩内容】本文版权归作者所有,未经授权不得转载。

除此之外,Hooks 一无是处。

本文作者:唐霜,转载请注明出处。转载请注明出处:www.tangshua原创内容,盗版必究。【原创内容,转载请注明出处】ng.net本文版权归作者所有,未经授权不得转载。本文版权归作者所有,未经授权不得转载。

在一些情况下,确实让写的代码量减少了。但【关注微信公众号:wwwtangshuangnet】【原创内容,转载请注明出处】是你确定在撰写代码阶段节省的时间,没有在【版权所有,侵权必究】著作权归作者所有,禁止商业用途转载。调试阶段还回来?Hooks 是一个异类,【本文受版权保护】本文作者:唐霜,转载请注明出处。遵循其思想创建的函数叫“状态函数”,就像原创内容,盗版必究。原创内容,盗版必究。 Date.now() 一样,鬼知道它会【本文受版权保护】【版权所有】唐霜 www.tangshuang.net返回什么结果。你自认为能控制被隐藏起来的原创内容,盗版必究。本文作者:唐霜,转载请注明出处。状态,因为社区告诉你“你不需要关心状态,未经授权,禁止复制转载。【作者:唐霜】而是关心什么时候需要产生影响”。我就想说著作权归作者所有,禁止商业用途转载。【版权所有,侵权必究】,你确定你不需要关心状态?摸着黑心问一问转载请注明出处:www.tangshuang.net【本文受版权保护】自己吧。当你需要关心一下的时候,你的状态著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】在哪里?在 React 内部的堆栈中,你【访问 www.tangshuang.net 获取更多精彩内容】【原创内容,转载请注明出处】根本摸都摸不到。

本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshua著作权归作者所有,禁止商业用途转载。未经授权,禁止复制转载。ngnet】【作者:唐霜】【版权所有】唐霜 www.tangshu转载请注明出处:www.tangshuang.net【原创内容,转载请注明出处】ang.net

而 React 是什么?基于状态的 UI【原创不易,请尊重版权】【本文首发于唐霜的博客】 渲染引擎。社区总结的一句话是“一个状态【版权所有,侵权必究】未经授权,禁止复制转载。对应一个界面”,你现在控制不了状态,然后【原创内容,转载请注明出处】【原创不易,请尊重版权】跟我说,你可以完全掌控界面的变化。拉倒吧本文版权归作者所有,未经授权不得转载。【版权所有,侵权必究】

【作者:唐霜】【版权所有,侵权必究】【关注微信公众号:wwwtangshua【原创不易,请尊重版权】未经授权,禁止复制转载。ngnet】

我可以不负责任的说:状态是函数的天敌!

【转载请注明来源】【原创不易,请尊重版权】【访问 www.tangshuang.n【转载请注明来源】原创内容,盗版必究。et 获取更多精彩内容】

我从来不在一个暴露的函数中使用状态(例如【访问 www.tangshuang.net 获取更多精彩内容】【版权所有】唐霜 www.tangshuang.net在函数中引用函数外的变量),虽然偶尔会在【未经授权禁止转载】本文版权归作者所有,未经授权不得转载。函数内创建一个私有函数使用函数内部的一个【作者:唐霜】本文作者:唐霜,转载请注明出处。状态来加快写码,但是我很清楚,这个状态和【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】函数都是用两下就会销毁的。React H【作者:唐霜】【版权所有】唐霜 www.tangshuang.netooks 反其道而行,又开心的说,我们拥未经授权,禁止复制转载。【未经授权禁止转载】抱函数式组建,又诡异的宣称,你可以在函数未经授权,禁止复制转载。原创内容,盗版必究。式组件里面操作和使用状态(但是你拿不到状【原创内容,转载请注明出处】本文版权归作者所有,未经授权不得转载。态)。如果你不是经常去看源码,你会严重怀转载请注明出处:www.tangshuang.net【关注微信公众号:wwwtangshuangnet】疑自己是不是进入了童话世界当起反派,明明【作者:唐霜】【本文受版权保护】理想那么美好,为啥我总是干坏事……

【原创不易,请尊重版权】本文作者:唐霜,转载请注明出处。【访问 www.tangshuang.n【转载请注明来源】【版权所有】唐霜 www.tangshuang.netet 获取更多精彩内容】【转载请注明来源】

吹吧!下一代主流!

本文作者:唐霜,转载请注明出处。原创内容,盗版必究。【本文首发于唐霜的博客】未经授权,禁止复制转载。

吹吧!最理想的 React 编程方式!

转载请注明出处:www.tangshua转载请注明出处:www.tangshuang.net【版权所有】唐霜 www.tangshuang.netng.net【本文受版权保护】【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。

吹吧!……

【关注微信公众号:wwwtangshua【作者:唐霜】【访问 www.tangshuang.net 获取更多精彩内容】ngnet】【版权所有,侵权必究】转载请注明出处:www.tangshua原创内容,盗版必究。原创内容,盗版必究。ng.net
已有3条评论
  1. Louiszen 2022-06-28 19:55

    兄弟,material ui自從由v5開始用hook寫,bug嚴重了,performance又下降了。
    用hook寫的程式碼根本不是人看的,由他們繼續吹吧。

  2. 哈哈怪 2022-01-01 17:31

    兄弟讲的挺好,就看抛弃虚拟 dom 的框架什么时候能成为主流了

    而且按你的想法,solid.js 也是不可取的?

    要不还是写原生吧 webcomponent 也有一些公司在实验性的用了

    • 否子戈 2022-01-07 18:59

      这纯属我一家之言,不要过于纠结。
      现在弃用virtual dom已经是大势所趋了,包括vue3实际上也不是完全的virtual dom了。
      至于web component,怎么说了,它还是component,不是application,想要做应用,还需要更高层的设计,可以看下我写的框架 sfcjs https://github.com/tangshuang/sfcjs