我正在Angular.io网站上观看“ 英雄的角之旅 ” 教程。我已经使用Angular CLI设置了项目(请参阅本文结尾处的环境版本)。
我陷入第5点(服务):使用教程提供的相同文件,在“ hero.service.ts”的第9行中出现以下错误:
Failed to compile.
/home/myuser/angular-tour-of-heroes/src/app/hero.service.ts (9,4): Type 'Hero[]' is not assignable to type 'Promise<Hero[]>'.
Property 'then' is missing in type 'Hero[]'.
Run Code Online (Sandbox Code Playgroud)
这是服务的代码(文件“ hero.service.ts”):
import { Injectable } from '@angular/core';
import { Hero } from './hero';
import { HEROES } from './mock-heroes';
@Injectable()
export class HeroService {
getHeroes(): Promise<Hero[]> {
return Promise.resolve(HEROES);
}
}
Run Code Online (Sandbox Code Playgroud)
这是在服务承诺解决时起作用的组件(app.component.ts)的片段:
export class AppComponent implements OnInit {
title = 'Tour of Heroes';
heroes: Hero[];
selectedHero: Hero;
constructor(private heroService: HeroService) …
Run Code Online (Sandbox Code Playgroud)