当前位置: 首页 > 面试题库 >

挂钩会否推翻redux?

东方河
2023-03-14
问题内容

我一直在搜索关于React的钩子的一段时间,一个问题在我脑海中持续存在。挂钩会否推翻redux?这是一个相当古老的讨论,因此先介绍一下上下文:

  • 使用React Hooks进行状态管理-没有Redux或Context API
  • Hook对流行的API(例如Redux connect()和React Router)意味着什么?
  • redux-react-hook

许多人(包括React的团队)似乎认为redux和类似的东西将只适应新的API,从而使HOC的方法过时了,但是我的问题是:

使用自定义钩子,使用reducer以及一个深思熟虑的逻辑,为什么我完全需要Redux吗?我的意思是,将您的操作分派给单个reducer不仅仅是表现更好吗?我已经找到了很多相关的材料,但是似乎没有一个明确的答案(也许是因为没有答案?),所以我想知道您对Redux的未来有何看法?


问题答案:

不,绝对不是。

我在Reactathon 2019关于“
Redux的状态”的演讲中
谈到了这一点。

总结:钩子大多数提供了完成已经可以做的相同事情的方式,例如本地组件状态和避免通过上下文进行钻探。如果这就是您使用Redux的全部,那么您可能一开始就不需要Redux。但是,钩子有其局限性,选择Redux还有很多其他用例。

另外,请注意,我们目前正在useRedux()为React-Redux 设计一个公共类型的hooks
API



 类似资料:
  • 我的错误日志中出现了以下错误:woocommerce_product_tax_class从3.0.0版开始就不推荐使用了!改用woocommerce_product_get_tax_class。 我有以下功能来显示不同的用户角色不同的税务类。我可以直接将“woocommerce_product_tax_class”更改为“woocommerce_product_get_tax_class”吗?

  • 问题内容: 我在程序中添加了以下代码: 但是,我没有看到该消息。附加信息:我正在Java 7的Netbeans IDE内部运行该程序。 编辑:我忘了补充说,有一个使程序保持活动状态的全局线程。我通过按Netbeans右下角的[x]来关闭它。 问题答案: JVM可以有序或突然关闭。关闭挂钩会运行以有序关闭:当最后一个线程终止时,有人呼叫或通过其他平台特定的方式(例如,按Ctrl-C)。 Shutdo

  • 问题内容: 我正在尝试使用urllib2 http客户端在python中创建下载进度栏。我已经查看了API(以及Google),似乎urllib2不允许您注册进度挂钩。但是,较旧的不推荐使用的urllib确实具有此功能。 有谁知道如何使用urllib2创建进度条或报告挂钩?还是有一些其他的黑客来获得类似的功能? 问题答案: 这是一个完全有效的示例,它建立在Anurag响应中的分块方法的基础上。我的

  • 更新状态的正确方式是什么,是一个嵌套对象,在与钩子反应? 如何使用将更新为(附加字段)? (更改值)?

  • 我在关注丹·阿布拉莫夫的这篇文章: https://overreacted.io/making-setinterval-declarative-with-react-hooks/ 在本文中,Dan制作了一个自定义的useInterval钩子,以创建一个动态的setInterval。 钩子看起来像这样: 但有一部分我不明白,那就是: 我理解,如果延迟更改,则调用此useEffect。回调被分配给ti

  • 问题内容: 我是Java /线程的新手,并且继承了类似以下代码的内容。这是一个命令行程序,main()仅启动5-6种不同类型的线程,并以^ C退出。我想添加一个关闭钩子以正确关闭所有线程,并通过以下方式对其进行调整。 我在所有线程中添加了一个Shutdown钩子和一个stopThread()方法(例如MyWorker类中的一个) 问题是当我按^ CI时,看不到线程的run方法的结束消息。这是在后台