代码之家  ›  专栏  ›  技术社区  ›  R. Kohlisch

Redux:将参数传递给可以从状态检索的操作?

  •  1
  • R. Kohlisch  · 技术社区  · 6 年前

    我有一本文章集。用户有时编辑或删除文章。我的应用程序跟踪当前正在处理的文章(称之为 currentArticleId ).

    当前文章ID 作为论据(例如: deleteArticle(this.props.currentArticleId) ),或者我会 这样做,只是炒了行动创造者 没有争论 (例如: deleteArticle() ),并检索 当前文章ID

    这里的最佳做法是什么?为什么我会选择一种解决方案而不是另一种?

    2 回复  |  直到 6 年前
        1
  •  0
  •   Andrej Jurkin    6 年前

    如果您所说的状态是指Redux应用程序状态,那么就没有正确或错误的答案。你甚至可以有两个动作- deleteCurrentArticle() deleteArticle(articleId)

    但是,如果您询问组件状态,我认为动作创建者应该与组件解耦。所以我更喜欢传递currentArticleId作为参数。

        2
  •  0
  •   Carwyn Stephen    6 年前

    我会让你的动作创建者更灵活地传递一个文章ID,然后你的删除文章动作可以删除当前的文章,或者任何其他它想要的文章。

    编辑:我想补充一点,通常有更好的替代方法来将这样的信息保存在全局状态。如果你只在一个页面上编辑/删除一篇文章,那么你可以有一个类似 article/{id}/edit