目录
在 Action Creators 中访问 Redux 状态:选项和注意事项
静态方法
函数方法
注意事项
首页 web前端 js教程 Redux Action Creators 中的状态访问何时适合您?

Redux Action Creators 中的状态访问何时适合您?

Oct 21, 2024 pm 06:45 PM

When is State Access in Redux Action Creators Right for You?

在 Action Creators 中访问 Redux 状态:选项和注意事项

在 Redux 中,访问 Action Creators 中的全局存储状态可能是一个有争议的话题。在这里,我们将深入研究动作创建者中状态访问的两种方法,并探讨它们的优缺点。

静态方法

1

2

3

4

5

6

7

import store from '../store';

export function someAction() {

  return {

    type: SOME_ACTION,

    items: store.getState().otherReducer.items,

  }

}

登录后复制

此方法直接导入商店,依赖于它是一个从模块导出的单例。虽然功能强大,但由于服务器渲染限制,每个请求通常需要单独的存储,因此不鼓励使用。

函数方法

1

2

3

4

5

6

7

export function someAction() {

  return (dispatch, getState) => {

    const {items} = getState().otherReducer;

 

    dispatch(anotherAction(items));

  }

}

登录后复制

此方法利用 Redux Thunk 中间件(推荐的技术)。 Thunk 允许操作创建者分派函数而不是普通的操作对象,从而提供对分派和 getState 函数的访问。虽然它需要中间件,但它可以无缝地用于客户端和服务器端渲染。

注意事项

  • Redux Creator 的意见: Dan Abramov 不鼓励实际的状态访问创建者,提倡在缓存数据检查或条件调度等特定场景中选择性使用。
  • Redux 维护者的观点: Mark Erikson 认为在 thunk 中访问状态是可以接受和鼓励的,承认其预期目的。

最终,最佳方法取决于个人应用程序的要求。理想情况下,操作应包含最少的信息;但是,必要时在操作创建器中使用 getState 是可以接受的。考虑这两种方法的优缺点,然后选择最适合您的项目的一种。

以上是Redux Action Creators 中的状态访问何时适合您?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

在JavaScript中替换字符串字符 在JavaScript中替换字符串字符 Mar 11, 2025 am 12:07 AM

在JavaScript中替换字符串字符

自定义Google搜索API设置教程 自定义Google搜索API设置教程 Mar 04, 2025 am 01:06 AM

自定义Google搜索API设置教程

示例颜色json文件 示例颜色json文件 Mar 03, 2025 am 12:35 AM

示例颜色json文件

10个jQuery语法荧光笔 10个jQuery语法荧光笔 Mar 02, 2025 am 12:32 AM

10个jQuery语法荧光笔

8令人惊叹的jQuery页面布局插件 8令人惊叹的jQuery页面布局插件 Mar 06, 2025 am 12:48 AM

8令人惊叹的jQuery页面布局插件

构建您自己的Ajax Web应用程序 构建您自己的Ajax Web应用程序 Mar 09, 2025 am 12:11 AM

构建您自己的Ajax Web应用程序

什么是这个'在JavaScript? 什么是这个'在JavaScript? Mar 04, 2025 am 01:15 AM

什么是这个'在JavaScript?

10 JavaScript和JQuery MVC教程 10 JavaScript和JQuery MVC教程 Mar 02, 2025 am 01:16 AM

10 JavaScript和JQuery MVC教程

See all articles