You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TypeScript接口中onGetData函数应该设置什么正确类型?

类型修改方案

onGetData在代码中是无入参、无返回值的回调函数,Props中对应的类型直接定义为() => void即可。同时可以把connect参数中dispatch的any类型一并替换,彻底清除代码中的any声明:

import { Dispatch } from 'redux';

// 若知晓getUsersData返回的Action结构,可替换下面的泛型约束,进一步消除any
interface UserAction {
  type: string;
  payload?: unknown;
}

interface Props {
  onGetData: () => void;
}

class TSSS extends Component<Props> {
  componentDidMount() {
    this.props.onGetData();
  }

  render() {
    return <div></div>;
  }
}

export default connect((dispatch: Dispatch<UserAction>) => ({
  onGetData: () => {
    dispatch(getUsersData());
  },
}))(TSSS);

补充说明

  • 如果使用Redux Toolkit,可直接使用项目中全局定义的AppDispatch类型,不需要单独声明Action结构,类型校验精度更高。
  • 如果后续onGetData需要传入参数/返回值,调整函数类型即可,比如需要传入数字ID就写成(id: number) => Promise<void>。

内容的提问来源于stack exchange,提问作者evaldschukin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 04:15:01