枚举类型不存在Typescript属性

彼得·波塔波夫

我尝试升级本课程的打字稿语法:https : //medium.com/@martin_hotell/improved-redux-type-safety-with-typescript-2-8-2c11a8062575

我想从联合类型中获取特定类型。我有这样的语法:

Actions['type'][ActionTypes.FEED_CREATE_POST]

输入动作:

type Actions = IActionWithPayload<ActionTypes.FEED_CREATE_POST, {
    text: string;
    files: any;
}> | IActionWithPayload<ActionTypes.FEED_GET_NEWS, {
    loadMore: boolean;
}>

财产种类':

(property) type: ActionTypes.FEED_GET_NEWS | ActionTypes.FEED_CREATE_POST

错误是:

Property 'FEED_CREATE_POST' does not exist on type 'ActionTypes.FEED_GET_NEWS | ActionTypes.FEED_CREATE_POST'.

有什么问题,我该如何解决?打字稿版本3.1.3

提香·切尔尼科娃·德拉戈米尔

要从联合中获取特定类型,您不能使用类型查询,而需要使用条件类型 Extract

type FeedCreate = Extract<Actions, IActionWithPayload<ActionTypes.FEED_CREATE_POST, unknown>>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

TypeScript类型不存在属性“ load”?

TypeScript中的类型不存在属性

Typescript:组合类型不存在属性?

TypeScript - 类型上不存在属性(但它存在)?

TypeScript:禁止联合类型的“类型上不存在属性”

属性“类型”不存在

TypeScript + Express:类型“ IncomingMessage”上不存在属性“ rawBody”

与 TypeScript 反应 - 类型“EventTarget”上不存在属性“value”

类型'FileList'上不存在TypeScript属性'forEach'

类型'ChildNode [Typescript]上不存在属性'tagName'

TypeScript 4-类型编号不存在属性查找[]

TypeScript Joi:类型“ Root”上不存在属性“ validate”

Typescript 属性在类型元素上不存在

类声明-TypeScript中的类型不存在属性

TypeScript中的EventTarget类型不存在属性“值”

TypeScript错误:类型“ Navigator”上不存在属性“ app”

Typescript中的类型“ Date”上不存在属性“ getWeek”

TypeScript:类型上不存在属性“范围”

ReactJS 中的 Typescript 错误 - 类型上不存在属性

Typescript属性“ length”在类型上不存在

TypeScript中的“ EventTarget”类型错误不存在属性“文件”

属性“名称”在类型“ EventTarget”上不存在-React + TypeScript

Typescript 的“对象”错误类型上不存在属性

使用TypeScript时获取类型的属性不存在错误

TypeScript:类型“any[]”上不存在属性“name”

RxJs / Typescript抛出“类型为{}的属性clientX不存在”

类型'ElementFinder'上不存在Typescript属性

TypeScript:类型“ Function”上不存在属性“ propertyName”

VueJS + Typescript:类型上不存在属性