React Redux mapDispatchToProps 与 this.props.dispatch

2023-11-30

到目前为止,我以这种方式使用容器和组件操作:

<Header btnMnuAction={this.props.toggleSidebar} logout={this.props.logout}/>

使用mapDispatchToProps函数:

const mapDispatchToProps = (dispatch) => {
    return {
        toggleSidebar: () => {
            dispatch(toggleSidebar());
        },
        logout: () => {
            dispatch(logout());
        }
    }
};

现在我尝试了这样的方法:

<Header btnMnuAction={() => this.props.dispatch(toggleSidebar())} logout={() => this.props.dispatch(logout())} >

请问,有人可以向我解释一下这些选项之间有什么区别吗?

谢谢 :)


当你使用connect from redux并利用mapDispatchToProps,返回的函数mapDispatchToProps可以作为 props 使用,例如在第一种情况下

const mapDispatchToProps = (dispatch) => {
    return {
        toggleSidebar: () => {
            dispatch(toggleSidebar());
        },
        logout: () => {
            dispatch(logout());
        }
    }
};

从道具中您将可以访问toggleSidebar and logout,其内部定义了调度。

在第二种情况下,如果您不将第二个参数传递给connect,它使得dispatch默认情况下可用,然后您可以使用调用该操作dispatch

因此,这些只是实现相同结果并在内部做相同事情的两种不同方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React Redux mapDispatchToProps 与 this.props.dispatch 的相关文章

随机推荐

  • CloudBlockBlob.DownloadToStream 与 DownloadRangeToStream

    尝试使用 ASP NET azure SDK 从 blob 存储下载图像 我在另一篇文章中读到 DownloadToStream 确实将 blob 分解成更小的块并并行下载它们以提高性能 我相信这就是 DownloadRangeToStre
  • JVM 和 HotSpot 之间的区别?

    HotSpot 到底是什么 它与 JVM 和 OpenJDK 有何关系 这是图书馆吗 它到底有什么作用 另外 OpenJDK 和 HotSpot 有什么区别 Java 虚拟机的确切定义在Java虚拟机规范 JVM 根据定义是虚拟机 即模拟真
  • θ(n) 和 O(n) 有什么区别?

    有时我会看到 n 带有奇怪的 符号 中间有一些东西 有时只是 O n 这只是因为没有人知道如何输入这个符号而懒得打字 还是它有不同的含义 简短说明 如果算法的大小为 g n 则意味着随着 n 输入大小 变大 算法的运行时间与 g n 成正比
  • Kotlin RC NoClassDefFoundError

    将 kotlin 更新到 RC 1036 后 我面临一个奇怪的问题 我的代码甚至没有编译和打包 当构建通过并且应用程序启动时我得到ClassNotFoundException Didn t find class example myappl
  • 查看任务的活动堆栈

    我刚刚开始开发一个简单的 Android 应用程序 同时我仍在学习该平台 我正在使用带有 ADT 插件 0 9 6 的 Eclipse IDE 我需要知道是否可以查看Activity与任务关联的堆栈 有没有办法通过 DDMS 工具或任何其他
  • 从 UIAlertView 获取文本

    似乎缺少了一些东西 但是下面的代码正在生成nil两者的值title and title1 即使它正确启动正确的警报类型并且不指示任何警告或错误 这种实施可能存在什么问题UIAlertView UIAlertView alert UIAler
  • 使用 MOSS Web 服务的 SharePoint 文档的权限

    我们需要检索对文档具有读取权限的用户组 我们知道文档的 URL 以下权限服务提供具有访问权限的组 但它需要站点 URL 或列表 URL 我们有一个文档 URL 是否有任何其他服务提供文档的权限 或者 如果我们知道文档 URL 是否有办法找到
  • 仅使用标准 java api(缩进和 Doctype 定位)即可漂亮地打印 javax.xml.transform.Transformer 的输出

    使用以下简单代码 package test import java io import javax xml transform import javax xml transform stream public class TestOutpu
  • CSS 改变输入是否有值的样式

    我有一个带有占位符的输入元素 它应该始终出现 wrapper position relative input font size 14px height 40px placeholder position absolute font siz
  • Tkinter filedialog 破坏条目小部件

    tl dr 当应用程序调用时tkinter filedialog entry字段无法正确聚焦 长解释 初始化 tkinter 应用程序时 entry默认情况下启用字段 他们的状态是tk ENABLED 可以通过滚动字段来关注它们tab 最重
  • jcreator中如何设置jdk路径

    我已经安装了jdk 1 7 in C jdk1 7 0 directory and JCreator in C Program Files directory 我在JCreator中设置了正确的jdk路径 但是当我尝试在其中执行 java
  • 创建临时表前先检查临时表是否存在,如果存在则删除

    我使用以下代码来检查临时表是否存在 并在再次创建之前删除该表 如果存在 只要我不更改列 它就可以正常工作 如果我稍后添加一列 它将给出 无效列 的错误 请让我知道我做错了什么 IF OBJECT ID tempdb Results IS N
  • Delphi TCP连接透明代理

    有人知道用 Delphi 编写的 TCP 套接字代理应用程序的示例吗 我正在构建一个小型代理应用程序 它需要侦听给定 TCP 端口上的套接字连接 读取通过连接发送的 XML 数据包 通过 TCP 将请求发送到从可用后端服务器池中选择的服务器
  • Webstorm中的Jade语言注入

    我有一个 HTML 元素 我希望将其内容视为 Jade 稍后将其编译为纯 html Webstorm 显然无法识别这一点 因此它没有语法突出显示 如果我将 jade 添加为语言注入 它不会被列为可能的语言注入之一 然而 Jade 文件可以被
  • 使用 rownum 选择表的第二行

    我尝试过以下查询 select empno from select empno from emp order by sal desc where rownum 2 这不会返回任何记录 当我尝试这个查询时 select rownum empn
  • 无法读取未定义的属性“标题”,但显示标题

    我是 Angular 4 的新手 我正在尝试构建我的第一个应用程序 标题显示在屏幕上 但在console 这是 html 文件中的第 26 行 h1 result title h1 This is 旅行详情组件 export class T
  • 合并 Android 单元测试和连接测试代码覆盖率数据已损坏

    Android Gradle 插件 2 3 3 版本能够提供合并的单元测试和连接的测试代码覆盖率数据 在版本 3 0 0 中 此功能被破坏 因为每种测试类型都使用不同且不兼容的 JaCoCo 版本 拉斐尔 托莱多提供中等博客文章展示了如何在
  • 提交表单而不重新加载页面[重复]

    这个问题在这里已经有答案了 我有一个用 JavaScript 构建的函数 我想在表单提交被点击后执行该函数 它基本上完全改变了页面的外观 但我需要搜索框中的一个变量才能继续传递到 JavaScript 目前它会闪烁并重置那里的内容 因为它会
  • 使用 jodatime 查找剩余日期和时间

    我想使用 joda 时间进行比较 查找剩余天数和两天之间的时间 我正在使用两个像这样的 DateTime 对象 一个正在开始 另一个正在结束 DateTime endDate new DateTime 2011 12 25 0 0 0 0
  • React Redux mapDispatchToProps 与 this.props.dispatch

    到目前为止 我以这种方式使用容器和组件操作