typescript中的redux toolkit createAction()类型定义

typescript中的redux toolkit createAction()类型定义,typescript,generics,redux,redux-toolkit,Typescript,Generics,Redux,Redux Toolkit,我最近正在探索redux工具包库,但在createAction函数的类型声明方面遇到了困难,如下所示 createAction返回PayloadActionCreator,其泛型为。然而,ReturnType['payload']是什么意思 export declare function createAction<PA extends PrepareAction<any>, T extends string = string>(type: T, prepareActio

我最近正在探索
redux工具包
库,但在
createAction
函数的类型声明方面遇到了困难,如下所示


createAction
返回PayloadActionCreator,其泛型为
。然而,
ReturnType['payload']
是什么意思

export declare function createAction<PA extends PrepareAction<any>, T extends string = string>(type: T, prepareAction: PA): PayloadActionCreator<ReturnType<PA>['payload'], T, PA>
导出声明函数createAction(类型:T,prepareAction:PA):PayloadActionCreator
ReturnType['payload']
是指
prepare
函数返回的对象的
payload
属性,因为这是
prepare
符号的签名

然而,这与你无关。通常的用法是
const-actionCreator=createAction('some/action/type')

另一种表示法是prepare表示法,形式为
createAction('some/action/type',(payload:string)=>({payload,meta:{something:foo}})

一般来说,请参考TypeScript中几乎所有的用法示例。
你真的不应该写比现在更多的类型。(是的,那不是很多类型,这就是重点;)

谢谢。我想我没有注意到
ReturnType
的泛型类型应该是一个函数。我肯定不会更改类型定义:))只是想训练读取函数定义的能力。我想这可以帮助我更好地使用这个功能。