请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

用Dispatch给dispatch定义时报错

老师,您好。
课程8-9 【redux封装】在类组件中使用react-redux
视频位置11分07秒
写这行代码时报错
const mapDispatchToProps = (dispatch: Dispatch) => {
截图如下
图片描述
我正确引入了Dispatch
import { Dispatch } from “react”; //这里代码无报错提示

我给Dispatch加个后,报错消失,代码可正常运行
图片描述

请问这是怎么回事?谢谢!

我的package.json
图片描述

补充:
我发现Dispatch引入错误,Dispatch应该从redux中引入,而非从react中引入。

redux和react的Dispatch对比图
图片描述

正在回答

1回答

感觉你的代码可能有点问题,图一中的错误提示显示你的Dispatch被定义为一个type,而redux中的Dispatch应该是一个interface才对。你截图的代码不完整,我也无法判断是否是引用出错。请补充一下header class的全部代码,我研究一下。谢谢

0 回复 有任何疑惑可以回复我~
  • 提问者 suyx #1
    老师,谢谢回复!
    我发现我错在哪里了。我去仔细看了下您的代码。我发现Dispatch引入错误。Dispatch应该从redux中引入,而非react。
    应该是import { Dispatch } from "redux";
    我的代码是import { Dispatch } from “react”;
    
    因为VisualStudioCode有自动补全功能,而且自动补全后也没报错,我没仔细看,就接着往下写代码了。
    
    我把鼠标放到上面两个Dispatch上,确实redux中的Dispatch是interface,而react中的Dispatch是type。截图放在我的提问里。
    
    使用import { Dispatch } from "redux"; 代码正常运行了
    回复 有任何疑惑可以回复我~ 2023-03-01 12:01:02
  • 提问者 suyx #2
    非常感谢!
    回复 有任何疑惑可以回复我~ 2023-03-03 12:27:20
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信