关于Angular Subscribe的语法问题

angular 官网中订阅服务的语法谁能解释一下?
在hero.component中 我们定义了一个函数来获取hero.service的请求

getHeroes(): void {
    this.heroService.getHeroes()
    .subscribe(heroes => this.heroes = heroes);
}

我知道 this.heroes是该component中的变量
那么 heroes 是一个异步返回后的数组吗?
为什么是 heroes => this.heroes = heroes
而不是 heroes => this.heroes
这里的等号是什么意思?

阅读 10k
2 个回答

=> 是es6中的箭头函数, 与普通函数不同的是它可以绑定当前上下文
详见 https://developer.mozilla.org...

getHeroes(): void {
    this.heroService.getHeroes()
    .subscribe(heroes => this.heroes = heroes);
}

分解开等同于

getHeroes(): void {
    var _this = this; 
    this.heroService.getHeroes()
    .subscribe(function(heroes) {
        _this.heroes = heroes;
    });
}

楼上的回答很对了,你的问题跟angular没有关系,它是用了es6的语法(箭头函数)。你去学习下,就理解了。箭头函数和以前函数不一样的地方就是在this的指向。你学习的时候得注意下。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进