React的优缺点
优点: 1.快速响应:Fiber 2.组件化:复用性强 3.声明式编程 4.跨平台:只需修改渲染器 缺点: 1.大型应用需要配置学习 状态管理,路由工具 2.不适合小型应用,需要babel处理
组件
函数式相较于Class的优缺点 1.代码量骤减,组件干净清爽 2.没有复杂的声明周期 3.支持自定义hook,逻辑复用方便
组件和Hook的关系
1.我们将UI拆成多个独立单元,这些单元组合可以构成多种试图展示,这些独立单元就是组件。 组件相当于原子。
2.hook贴近组件内部运行的各种概念逻辑,effect,state,context等。 hooks更贴近于电子。
Hook规则&原理
1.在React函数组件中或自定义Hook中调用 2.自定义Hook必须以use 开头
3.Hook中的state是完全隔离的
我的思考:
React中的逻辑复用可以通过以下几种方式实现:
-
Render Props:Render Props是一种组件复用的方式,它可以将组件的逻辑作为props传递给子组件,从而实现逻辑复用。使用Render Props时,需要创建一个接受函数作为参数的组件,然后在该组件中将需要复用的逻辑作为参数传递给子组件。
-
高阶组件(Higher-Order Component):高阶组件是一种函数,它接受一个组件作为参数,并返回一个新的组件。使用高阶组件可以将组件的逻辑封装起来,并复用到其他组件中。高阶组件可以用于实现一些通用的逻辑,如数据获取、权限控制等。
-
Hooks:Hooks是React 16.8版本新增的特性,它可以将组件的状态和逻辑进行复用。使用Hooks时,可以将组件的逻辑抽离出来,封装成一个自定义的Hook,然后在其他组件中复用。