【问题标题】:Easy Peasy VS React ReduxEasy Peasy VS React Redux
【发布时间】:2020-05-21 21:48:01
【问题描述】:

最近我发现了这个库:https://easy-peasy.now.sh/ 实现了它,并且必须说它非常好。为什么它不像redux那么流行?为什么人们在可以使用它时倾向于使用redux?两者的优点和缺点是什么? 还想知道当我可以做这样的事情时,状态的不变性是如何在简单的 peasy 中保存的:

addProduct: action((state, payload) => {
    state.productIds.push(payload);
  })

显然它会改变状态。也许它不会改变实际状态? 一般想知道是否保留了所有redux原则,两者之间的主要区别是什么?

【问题讨论】:

    标签: react-redux immutability easy-peasy


    【解决方案1】:

    easy-peasy 是对 Redux 的抽象,它在内部使用 Redux 来管理状态。

    有些人会选择使用 Redux,因为他们可以完全控制 action、action creators、reducers 等的实现方式。然而,easy-peasy 的用户被赋予了一种使用 Redux 的固执己见的方式,这大大减少了您必须编写的样板代码量。

    至于它如何在 reducer 中强制执行不变性,而编写的代码看起来像是在改变数据,easy-peasy 实际上使用了Immer“幕后”;引自 Immer 网站:

    “基本思想是将所有更改应用到临时 DraftState,它是 currentState 的代理。一旦你所有 突变完成后,Immer 将根据 草案状态的突变。这意味着您可以与 通过简单地修改您的数据,同时保留所有的好处 不可变数据。”

    与 easy-peasy 网站上的 stated 一样,该库允许扩展底层 Redux 存储,允许您插入原始 Redux 中间件/增强器。

    【讨论】:

    • 请注意,我是 easy-peasy 的粉丝,不必编写样板代码所节省的时间是一个巨大的胜利!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多