React/TypeScript - “Dispatch>”代表什么?

2023-11-27

我正在用 TypeScript 编写 React 组件的前端测试。由于代码来自更有经验的程序员,因此某些数据类型对我来说似乎有点新。现在我有了一个使用“Dispatch”作为数据类型定义的道具。我注意到使用 useState-Hook 的 set-property 是有效的,但我不太确定这是否是应该使用 prop 的方式。供参考:该道具称为“onFullScreenClick”。我将非常感谢您对最有可能放入的内容进行解释和示例


如果你看看打字的来源:

type SetStateAction<S> = S | (prevState: S) => S;

type Dispatch<A> = (action: A) => void;

Dispatch将操作作为参数并返回任何有意义的内容 (void)。 动作有多种类型,其中之一是SetStateAction.

请记住useState可以采用新状态,或者采用先前状态并返回新状态的函数。

So useState的类型实际上是:

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

React/TypeScript - “Dispatch>”代表什么? 的相关文章

随机推荐

  • 如何在ServiceBus上通过sequenceNumber使用MessageReceiver.Receive方法

    我正在尝试从死信队列重新提交消息 我可以重播死信队列上的消息 这很好 问题是当我现在想从死信队列中删除它时 这是我正在尝试做的事情 var subscription mySubscription var topic myTopic var
  • 在闪亮的传单地图中使用标签和颜色时,图例标签不会内联显示

    当我想使用时labels and colors参数与addLegend 里面的函数shinyApp图例显示在楼梯中 如下所示 但如果我只渲染地图leaflet之外的shinyApp标签正确地内嵌显示 我见过这个帖子遇到同样的问题 但他们没有
  • 什么情况下需要使用 eval() 因为没有其他选择?

    I know eval出于速度和安全原因 应避免在 JavaScript 中使用 但就 PHP 而言 很少有人提到安全性 更常见的是 由于随意使用 您的程序运行速度比应有的速度慢eval 在什么具体情况下应该使用eval因为没有其他办法吗
  • 分析多线程程序[关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我们的代码库已经有好几年了 所有原来的开发人员都早已不在了 它使用很多很多线程 但没有明显的设计或通用的架构原则 每个开发人员都有自己的多线程编程风格 因此有些线程使用队列相互通信
  • 具有多个父/子关系的 Elasticsearch

    书籍 用户和评论说 我正在构建一个具有复杂模型的应用程序 评论包含书籍和用户 ID 为了能够搜索至少包含一篇评论的图书 我已将图书设置为评论的父级并具有路由 但是 我还需要找到撰写包含某些短语的评论的用户 是否可以将书籍和用户同时作为评论的
  • 页面加载失败时在Chrome中获取当前域名

    如果您尝试使用 Chrome 加载 http sdqdsqdqsdsqdsqd com 您将获得 ERR NAME NOT RESOLVED 我希望通过一个小书签能够获取当前域名并将其重定向到 whois 页面 以便检查该域名是否可用 我在
  • 从 html 按钮 onclick 事件调用 typescript 方法

    我是打字稿新手 我有一个关于当您单击 html 按钮时如何从 html 页面调用 ts 文件内的方法的查询 ts file class AdminTS public alertMessageTS alert This is the test
  • 使用java创建CSV文件

    我将使用 java 创建 CSV 文件 这是代码的一部分 try FileWriter writer new FileWriter sFileName writer append Title for StoredArticle sa3 hi
  • 按钮的 OnClickListener 上出现 NullPointerException

    我正在为人工智能学期项目编写 Android 游戏应用程序 我在主类的第 38 行收到 NullPointerException 它是启动屏幕中新游戏按钮的 setOnClickListener 相关部分 WW3Activity 类 pub
  • 量角器找不到角度

    我似乎无法让 Protractor 意识到 Angular 已加载并正在运行 当它打开 Chrome 时 我的应用程序会在浏览器中完全加载 因此我知道 Angular 已加载并正确运行 配置文件 exports config seleniu
  • var 在 Java 中做什么?

    我的一个朋友注意到 var
  • 我需要服务哪些 Android ABI(CPU 架构)?

    我决定为不同的 ABI 上传多个 APK 以缩小我的 apk 文件大小大规模地 因此我用android gt splits gt abi gt enable true 应用程序级别build gradle 我遇到过这些不同的 APK 风格
  • 检查列值是否位于其他两个列值之间(范围)

    我有一个如下所示的数据框 Dataframe X id number found 1 5225 NA 2 2222 NA 3 3121 NA 我有另一个数据框 如下所示 数据框 Y id number1 number2 1 4000 600
  • 在 Android Studio 中生成签名 APK 时,签名版本 - V1(Jar 签名)和 V2(完整 APK 签名)之间的区别?

    请至少选择一个要在 Android Studio 2 3 中使用的签名版本 现在 在 Android Studio 中生成签名的 APK 时 它显示两个选项 复选框 即 1 V1 Jar Signature and 2 V2 Full AP
  • IIS7 下超出 Web 配置大小限制 0x80070032

    我有一个web config文件在我当前在 IIS7 上运行的解决方案中相当大 它在我的开发服务器上运行完美 但是我遇到了错误0x80070032 配置错误无法读取配置文件 因为它超出了最大文件大小 我当前的解决方案使用一个非常大的web
  • XGBoost 最佳迭代

    我正在使用 XGBoost 算法运行回归 clf XGBRegressor eval set X train y train X val y val early stopping rounds 10 n estimators 10 verb
  • 将列添加到包含其他列值列表的 pandas DataFrame

    我有一个 DataFrame 需要向其中添加一列 该列必须是两个值的列表 当前表 lat long other value 0 50 50 x 1 60 50 y 2 70 50 z 3 80 50 a 需要的表 lat long othe
  • 如何解决嵌套映射函数中的 SPARK-5063

    RDD 转换和操作只能由驱动程序调用 不能在其他转换内部调用 例如 rdd1 map x gt rdd2 values count x 无效 因为值转换和计数操作无法在 rdd1 map 转换内部执行 有关更多信息 请参阅 SPARK 50
  • 在64位linux上从32位模式切换到64位(长模式)

    我的程序在 x86 64 CPU 64位操作系统 ubuntu 8 04 上以32位模式运行 是否可以在用户模式下暂时切换到64位模式 长模式 如果是这样 怎么办 背景故事 我正在编写一个与32位模式程序链接的库 因此它在启动时必须是32位
  • React/TypeScript - “Dispatch>”代表什么?

    我正在用 TypeScript 编写 React 组件的前端测试 由于代码来自更有经验的程序员 因此某些数据类型对我来说似乎有点新 现在我有了一个使用 Dispatch 作为数据类型定义的道具 我注意到使用 useState Hook 的