在Angular 9中为什么收到此消息: 类型项目不能分配给类型(Items&NgIterable)|未定义空
模型正确。我没有数据错误。 该代码有效,但仍然收到此打字稿警告。
myData的模型如下:
interface Item {
url: string;
label: string;
}
export interface Items {
[key:number]: Item ;
}
我的HTML:
<ng-container *ngFor="let card of myData"><!-- here I get the warning -->
some content
</ng-container>
已添加:我忘了添加示例数据以使其更加清楚。 它是这样的数组:
[
{
url: 'todo',
label: 'Rekeningnummer'
},
{
url: 'todo',
label: 'Postadres'
}]
答案 0 :(得分:1)
我通过使用Item []类型而不是Items修复了它。
myData: Item[] = [...]
我读到[key:string]:T形式的索引可以被视为总是可选的。看来我不能使用?使数组可能为空。
export interface Items {
[key:number]?: Item ;
}