node.js - Angular2教程中,这里返回值为什么是heroes?
PHPz
PHPz 2017-04-17 15:25:43
0
2
619

点这里看文档Angular2文档
文件详情在教程最后面

app/hero.service.ts

export class HeroService {
  getHeroes(): Promise<Hero[]> {
    return Promise.resolve(HEROES);
  }
}

如上述代码,getHeroes()返回一个承诺,resolve之前是HEROES

app/app.component.ts
 getHeroes(): void {
    this.heroService.getHeroes().then(heroes => this.heroes = heroes);
  }

据我了解,=>是匿名函数 那么heroes => this.heroes = heroes就大致等价于

function(heroes) {
    return this.heroes = heroes
}

也就是说服务的getHeroes()返回的结果应该是是heroes。
那么问题来了,
明明是 return Promise.resolve(HEROES)
为什么在使用的时候又是heroes?

PHPz
PHPz

学习是最好的投资!

모든 응답(2)
PHPzhong

app/hero.service.ts

내보내기 클래스 HeroService {
getHeroes(): Promise<Hero[]> 으아악

}

} 이것은 es6 구문입니까, 아니면 typescript 구문입니까?

迷茫

이렇게 이해하실 수 있나요? 서비스가 Promise.resolve(HEROES)를 반환하고, 반환된 데이터가 함수의 매개변수로 this.heroes에 전달됩니다.

으아악
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿