class组件,和hooks组件,各有各的复杂,都很麻烦。本质上是因为react采取了一个奇葩的响应式方案,就是对状态根对象做简单的引用比较。为了这个,弄出一堆fp不可变的东西来,不管咋弄心智负担都不小。
这方面我还是觉得vue mobx这种proxy式的响应式方案比较靠谱,也切合现在业务逻辑一般都用class oop来写的实际情况。proxy式的响应方案,虽然也要注意不能丢失引用,但是规则还是比较简单的,只要记住永远要用a.b就可以,不能没有中间那个点。
前面有人提到被toRef toRaw这些搞晕了,其实这些都是处理特殊情况的边缘api。正常只要记住上面的规则,会用ref reactive,知道computed返回的是个ref,就可以干活了。
今天刚在知乎上写了个相关文章,贴出来吧
https://www.zhihu.com/question/468249924/answer/1968728853
【 在 eGust (十年) 的大作中提到: 】
: react 官方文档 hooks 的介绍部分阐述了引入 hooks api 的理由:
:
https://reactjs.org/docs/hooks-intro.html#motivation: - It’s hard to reuse stateful logic between components
: ...................
--
FROM 123.120.168.*