S.K*_*aus 10 reactjs react-hooks
直到现在,我们还习惯于Flux流,其中数据通过prop进入组件。因此,您可以查看Props签名并查看组件要求是什么。
挂钩是一个了不起的功能,但是当我们过渡到它们时,我发现它们为依赖关系提供了另一个入口,这很难管理,因为您必须查看实际的组件代码才能看到它。
当然,我们只能在容器组件中使用Hook,但是我认为它们的一些主要卖点是它们减少嵌套和HOC的能力。
(目前)确定哪个组件应该使用挂钩以及哪个组件应该使用渲染道具的最佳实践是什么?
Hooks 和 HOCs 是不同的编程模型,比较它们就像比较橙子和苹果一样。
TL; 博士
根据经验,当我想要组件的条件渲染(如果条件:渲染 A,否则渲染 B)时,我使用 HOC,否则,我使用钩子。这只是我的意见。
HOC 优点
HOC 的缺点
x。HOC 正反两方面
钩子的优点
钩子的缺点
并根据该阵营常见问题钩可被用作替代renderProps和HOCs,但可以与他们共存
通常,渲染道具和高阶组件仅渲染一个孩子。我们认为,挂钩是服务此用例的更简单方法。这两种模式仍然存在(例如,虚拟滚动器组件可能具有renderItem属性,或者可视容器组件可能具有其自己的DOM结构)。但是在大多数情况下,挂钩就足够了,并且可以帮助减少树中的嵌套。
挂钩允许功能组件中的状态逻辑,并且类似于React中的类组件。
挂钩很难管理,因为您必须查看实际的组件代码才能看到它。
并非如此,因为您可以在自定义钩子中提取HOC或renderProps中的自定义逻辑,并查找其实现,而不是了解实际组件中实际发生的情况。
| 归档时间: |
|
| 查看次数: |
2779 次 |
| 最近记录: |