首页 > 解决方案 > 在 Angular 中声明一个数组

问题描述

我收到以下错误,有人可以告诉我如何解决吗?

输入'{动物:[{ id:1,名称:“大象”},{id:2,名称:“马”} []; }' 不可分配给类型 'string[]'。类型“{动物:{id:数字;”中缺少属性“包含” 名称:字符串;}[]; }'。

 animals : string[];
 ...

 let e = {
      animal:[
      { 
        id : 1,
        name: "Elephant"

      },
      {
        id : 2,
        name: "Horse"
      }
    ]};
    this.animals = e;

标签: javascripttypescript

解决方案


在不改变 的值的情况下e,动物的类型将是:

animals : {animal: [{id:number, name: string}]}

您当前正在尝试将上述类型分配到一个字符串数组中,它看起来像['Elephant', 'Horse']. 这个问题详细说明了编写自己的类型。


推荐阅读