类型[]中缺少JavaScript类型脚本属性0

ste*_*tis 15 javascript typescript

我想拥有一个对象数组,如下所示.

但是,typescript会抛出错误类型[]中缺少属性0

let organisations: [{name: string, collapsed: boolean}] = [];
Run Code Online (Sandbox Code Playgroud)

Tit*_*mir 31

您定义的是元组类型(具有固定数量的元素和异构类型的数组).由于元组具有固定数量的元素,因此编译器会检查赋值的元素数.

要定义数组,[]必须在元素类型之后

let organisations: {name: string, collapsed: boolean}[] = [];
Run Code Online (Sandbox Code Playgroud)

或者相当于我们可以使用 Array<T>

let organisations: Array<{name: string, collapsed: boolean}> = [];
Run Code Online (Sandbox Code Playgroud)