$PropertyType 获取数组条目

Noi*_*art 2 flowtype

我有一个这样的类型定义:

type Blah = {
   fields: {
       value: string
   }[]
}
Run Code Online (Sandbox Code Playgroud)

我们在这里看到的字段是一堆数组条目。我想通过$PropertyType.

$PropertyType<Blah, 'fields'>给我们数组,是否有可能得到元素?

我不能这样做的原因是type Field = {value:string}键入 Blah = { fields:Field[] } is because I don't have control over typeBlah`,我是从 3rd 方包导入它。

kal*_*ley 7

您可以使用新的$ElementType实用程序来执行此操作。

尝试流程

type Blah = {
   fields: {
       value: string
   }[]
}

type Fields = $PropertyType<Blah, 'fields'>
type Field = $ElementType<Fields, number>


const field: Field = {
  value: 'blah'
}
Run Code Online (Sandbox Code Playgroud)