【发布时间】:2020-01-10 06:19:43
【问题描述】:
我正在尝试阅读 Redux 源代码,但我被困在 src/types/reducers.ts 中的以下类型定义中
/**
* Infer a combined state shape from a `ReducersMapObject`.
*
* @template M Object map of reducers as provided to `combineReducers(map: M)`.
*/
export type StateFromReducersMapObject<M> = M extends ReducersMapObject<
any,
any
>
? { [P in keyof M]: M[P] extends Reducer<infer S, any> ? S : never }
: never
我被困在:
M extends ReducersMapObject<
any,
any
>
? { [P in keyof M]: M[P] extends Reducer<infer S, any> ? S : never }
: never
此行中有一个?。这看起来像一个三元运算。
有人可以向我解释这里发生了什么吗?
Here is the full source code。提前谢谢你。
【问题讨论】:
标签: typescript redux typescript-generics