【问题标题】:Is it worth using Redux with a Meteor / React app?将 Redux 与 Meteor / React 应用程序一起使用是否值得?
【发布时间】:2020-02-28 01:54:38
【问题描述】:

我使用过 Meteor 并且喜欢它,发布/订阅模型,整个框架的构思方式,编写服务器端代码的简易性......我已经使用 React 和 Meteor ,这也很酷。

不过,我最近在 React/Redux 中完成了一个非 Meteor 项目,Redux 有很多值得喜爱的地方。设置起来比较费劲,但是单点商店和所有相关的工具/系统都非常好。

我的网络应用会做大量的数据库交互,需要乐观的 UI。

所以我想知道是否在我的下一个项目中使用 Meteor/React/Redux,尤其是 MiniMongo 存在一些限制(例如,不支持数组)。但是我没有找到很多关于如何将它们连接在一起的相关教程,例如this one 现在已经快 3 岁了。这让我怀疑是否有很多人在使用这个设置,以及我是否能够轻松地让它工作:我从过去的经验中知道,我需要一步一步的教程来克服新设置的最初障碍,然后我可以自己解决问题。

接下来我肯定会使用 Meteor/Redux。我认识他们,我喜欢他们。问题是添加 Redux 是否值得开销?我希望这是一个适合 StackOverflow 的问题,如果不是,我会尝试将其发布到其他地方。

我想听听在 Meteor/React 中使用或不使用 Redux 的原因,以及对教程的任何建议。谢谢。

【问题讨论】:

    标签: reactjs meteor redux


    【解决方案1】:

    我认为 Redux 适用于非流星世界,尽管现在有使用 graphql 本地状态或使用 React 上下文 api 的替代方案(由于 React Hooks,它不再被弃用)

    总之,回到正题……

    我有两个独立的 Meteor 应用程序,一个使用 Redux,另一个不使用。

    Redux 可以很好地与 Meteor 配合使用,它在异步方面做得很好,但它增加了很多复杂性以获得可争论的好处。在非流星应用程序中,您在编排异步 API 调用方面做得更多,那么这完全有意义,因为您可以有效地将数据处理与 UI 分离。

    但在典型的 Meteor 应用程序中,使用发布和订阅意味着无论如何数据都会自然流动。 UI 按钮请求后端操作。 Meteor 方法完成工作,更新数据库,数据在 UI 中自动更新。

    让我们以我最近实现的一个场景为例。我的应用程序的成员需要一份与儿童一起工作的支票。他们有一个编号,当我们处理会员续订时,我们需要检查该编号是否仍然有效。这是由 UI 上的按钮启动的,该按钮调用 Meteor 方法,该方法又执行 API 调用。该方法只是将检查结果(即使它失败)更新到成员的数据库记录中。 Meteor 调用的返回值允许我们为用户做一个 toast 通知,而 pub/sub 会在 UI 中更新新状态之后进行处理。

    这也可以用 Redux 完成,但几乎所有上述代码都需要完成。

    我的偏好是远离 Redux,因为有替代方案,感觉就像是一种工程水平,让你远离编写应用程序。

    【讨论】:

    • 谢谢!我的问题是我有需要更新单个单元格的大型数组,并且在 MiniMongo 中使其具有反应性很棘手。
    猜你喜欢
    • 1970-01-01
    • 2018-08-11
    • 2017-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-05
    • 2017-12-09
    • 2018-12-05
    相关资源
    最近更新 更多