Tuv*_*sid 0 javascript typescript angular
我正在使用 angular 并进行级联选择
city: {};
area: {};
selectedAreas: [];
selectedSuburbs: [];
arrAddress = [{
city: "Auckland",
id: 1,
areas: [{
area: "Waitakere",
id: 11,
suburbs: [{
suburb: "Rodney",
id: 12
},
{
suburb: "North Shore",
id: 13
},
{
suburb: "City",
id: 14
},
]
}]
}];
onSelectCity(e) {
this.city = this.arrAddress.find(element => element.id === Number(e.value));
this.selectedAreas = this.city['areas'];
}
onSelectArea(e) {
this.area = this.selectedAreas.find(element => element.id === Number(e.value));
this.selectedSuburbs = this.area['suburbs'];
}
Run Code Online (Sandbox Code Playgroud)
在函数中onSelectArea我收到一个错误element.id
“[ts] 类型 'never' 上不存在属性 'id'。”
有任何想法吗?提前致谢
Jet*_*eto 10
你从编译器得到的那个错误是由于selectedAreas没有正确声明。通过这样做,property: []您定义了一个只能容纳空数组的属性。
请改用以下内容,它设置默认值(与类型相反):
selectedAreas = []; // note the equal sign
Run Code Online (Sandbox Code Playgroud)
或者更好:
selectedAreas: Area[] = [];
Run Code Online (Sandbox Code Playgroud)
whereArea将是您定义其属性的类。
您的其他属性也有同样的问题(property: {}定义一个只能是空对象的属性)。
| 归档时间: |
|
| 查看次数: |
9278 次 |
| 最近记录: |