代码之家  ›  专栏  ›  技术社区  ›  stevenpcurtis

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

  •  5
  • stevenpcurtis  · 技术社区  · 6 年前

    我想要一个对象数组,如下所示。

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

    let organisations: [{name: string, collapsed: boolean}] = [];
    
    2 回复  |  直到 6 年前
        1
  •  44
  •   Titian Cernicova-Dragomir    6 年前

    tuple type (具有固定数量的元素和异构类型的数组)。由于元组有固定数量的元素,编译器会检查赋值时元素的数量。

    [] 必须在元素类型之后

    let organisations: {name: string, collapsed: boolean}[] = [];
    

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

    let organisations: Array<{name: string, collapsed: boolean}> = [];
    
        2
  •  1
  •   Praveen Poonia    6 年前

    您可以定义元组类型,如-

    type organisationsType = {name: string, collapsed: boolean};
    let organisations: organisationsType[];
    

    记住数组 [] organisationsType

    推荐文章