首页 > 解决方案 > typescript/flow 中的 [type] 是什么意思?

问题描述

我最近偶然发现了我的一个旧代码,我注意到我在那里输入错误。

interface OptionType {
   label: string,
   value: OptionValueType
}

interface Props {
  options: [OptionType] // < this is wrong
}

现在显然,这应该是OptionType[]or Array<OptionType>,但奇怪的是,这里的代码至少根据 linter ( ) 和编译器都是有效的语法。

那么,具体[OptionType]代表什么?

我最好的猜测是数组的索引/元素,类似于解构,但这感觉很奇怪,因为语法中没有原始数组引用

标签: reactjstypescripttypestypescript-typingsflowtype

解决方案


这是一个元组。它的语法允许您指定一个恰好包含 n 个元素的数组,并为每个元素指定一个类型:

const myTuple: [string, number] = ['foo', 5];

推荐阅读