使用redux进行反应的原因是什么?

Sup*_*nky 2 reactjs redux

有没有人有充分理由使用redux进行反应?我想在反应中构建非常小的组件,所以我不需要redux.每个组件都有自己的状态,如redux.

你怎么看?你有什么样的经历?

Tim*_*imo 6

Redux常见问题解答中的精彩段落:

Peact Hunt是React的早期贡献者之一,他说:

你会知道什么时候需要Flux.如果您不确定是否需要它,则不需要它.

同样,Redux的创造者之一Dan Abramov说:

我想修改一下:在你遇到香草反应问题之前不要使用Redux.

一般情况下,当您有合理数量的数据随时间变化时使用Redux,您需要一个单一的事实来源,并且您发现将所有内容保持在顶级React组件状态的方法已经不够了.

但是,了解使用Redux需要权衡也很重要.它不是设计为编写代码的最短或最快的方式.它旨在帮助回答"何时某个状态发生变化,数据来自何处?"这一问题,具有可预测的行为.它通过要求您遵循应用程序中的特定约束来实现:将应用程序的状态存储为纯数据,将更改描述为普通对象,并使用可以不可变地应用更新的纯函数来处理这些更改.这往往是关于"样板"的投诉的来源.这些约束需要开发人员的努力,但也开辟了许多其他可能性(例如存储持久性和同步).

如果你刚刚学习React,你应该首先关注React,然后在你更好地理解React以及Redux如何适应你的应用程序之后再看看Redux.

最后,Redux只是一个工具.它是一个很棒的工具,使用它有一些很好的理由,但也有理由你可能不想使用它.对您的工具做出明智的决策,并了解每个决策所涉及的权衡.