打字稿:错误TS2322:无法将类型“对象[]”分配给类型“ [任何]”

时间:2018-10-25 18:55:34

标签: javascript angular typescript angular6

我在angular中有两个接口:

interface DropDown {
    items: DropDownItem[];
    buttonColor: string;
}

interface DropDownItem {
    name: string;
}

然后我在这样的组件中初始化一个属性:

export class FiltersComponent implements OnInit {

firstDropDown: DropDown;


constructor() {
}

ngOnInit() {

    this.firstDropDown = {
        items: [
            {name: "all"},
            {name: 'first'}
        ],
        buttonColor: 'text-danger'
    };
}

}

这样做,我会收到此错误:

  

src / app / shared / dropdown / dropdown.component.ts(22,13)中的错误:错误TS2322:类型'DropDownItem []'无法分配给类型[[any]'。     类型'DropDownItem []'中缺少属性'0'。

出什么问题了??我真的很感谢一些见识。谢谢!

所以问题出在dropdown.component.ts

export class DropdownComponent implements OnInit {

show = false;
@Input() dropDown: DropDown;
selectedItem: any;
items: DropDownItem[]; //here i had [any]
buttonColor: string;

constructor() {
} 

}

0 个答案:

没有答案