类型 'Promise<Test[]>' 不可分配给类型 Test[],'T 属性 'includes' 在类型 'Promise<Test[]>' 中缺失
Type 'Promise<Test[]>' is not assignable to type Test[], 'T Property 'includes' is missing in type 'Promise<Test[]>'
test.component.ts:
export class TestcaseComponent implements OnInit {
selectedDrpDown: Testcase[];
//event handler for the select element's change event
selectChangeHandler (event: any) {
if(event.target.value == "ALL") {
this.selectedDrpDown = this.getTest(); // error is coming here
}
}
}
data.service.ts:
// Get all Test
getTest(): Promise<Test[]> {
return this.http.get(this.url)
.toPromise()
.then(response => response.json() as Test[])
.catch(this.handleError);
}
我需要 return 在下拉菜单的事件处理程序中选择 DropDown,如何修复此转换错误。
从组件而不是服务中解开承诺。使用 map
函数将响应转换为 json
getTest(): Promise<Test[]> {
return this.http.get(this.url)
.toPromise()
.catch(this.handleError);
}
selectedDrpDown: Test[];
if(event.target.value == "ALL"){
this.getTest()
.then(response => {
this.selectedDrpDown = response as Test[]
})
}
test.component.ts:
export class TestcaseComponent implements OnInit {
selectedDrpDown: Testcase[];
//event handler for the select element's change event
selectChangeHandler (event: any) {
if(event.target.value == "ALL") {
this.selectedDrpDown = this.getTest(); // error is coming here
}
}
}
data.service.ts:
// Get all Test
getTest(): Promise<Test[]> {
return this.http.get(this.url)
.toPromise()
.then(response => response.json() as Test[])
.catch(this.handleError);
}
我需要 return 在下拉菜单的事件处理程序中选择 DropDown,如何修复此转换错误。
从组件而不是服务中解开承诺。使用 map
函数将响应转换为 json
getTest(): Promise<Test[]> {
return this.http.get(this.url)
.toPromise()
.catch(this.handleError);
}
selectedDrpDown: Test[];
if(event.target.value == "ALL"){
this.getTest()
.then(response => {
this.selectedDrpDown = response as Test[]
})
}