看ant-design-pro源码

wyofky6m
  • 1
新手上路,请多包涵

源码中有下面的源码,这是什么意思呢?有没有人给个下面源码涉及到的知识的链接。
export type Dispatch = <P = any, C = (payload: P) => void>(action: {
type: string;
payload?: P;
callback?: C;

}) => any;

回复
阅读 1.1k
3 个回答

你标签不就写了TypeScript

这是一个typescript的代码, 定义了一个类型Dispatch

如果你看不懂这个代码说明你对typescript不了解,你可以先去看看typescript的入门教程,半天就可以看完,然后再来看这个ant-desgin-pro的源码就知道这啥意思了

给你推荐几个链接,由浅入深

Ts入门教程
Ts进阶
官方文档

建议先看入门教程,再看进阶,官方文档没有中文,如果你英语阅读很厉害,当我没说,官方文档更加准确和完整,前面两个文档很多东西没有提到的东西他都有

type TheCallbackFunc<Payload> = (payload: Payload) => void
// 定义了一个回调函数(类型),参数是Payload类型的, Payload 是泛型参数,可以在调用的时候灵活指定或自动推导,该函数没有返回值

type Action<Payload> = {
    type: string
    payload?: Payload
    callback?: TheCallbackFunc<Payload>
}
// 定义了一个对象类型

export type DispatchTwo = <Payload = any>(action: Action<Payload>) => any
// 定义了 DispatchTwo 类型,该类型是一个函数,参数的类型是上面声明的那个,这个DispatchTwo类型的函数可以返回任意值
你知道吗?

宣传栏