1
繼角2教程@https://angular.io/docs/ts/latest/tutorial/toh-pt4.html角提供商
在
@Component({
})
我插入的 「providers: [HeroService]
」,其中包含的getHeroes()
方法。
創建一個構造函數:
constructor(private heroService: HeroService) {}
現在我不明白的是我怎麼了能夠使用
this.heroService.getHeroes()
在這個類中定義的唯一propertes是:
title = 'Tour of Heroes';
heroes: Hero[];
selectedHero: Hero;
@Component
修飾器中的提供者是否自動創建一個屬性以通過this.
來訪問它?
應用程序工作,只是不知道如何奇蹟般地在
constructor(private heroService: HeroService) {}
也能夠通過this.
有意思的是,如果我將它留空,它默認爲公共,但不會創建屬性,但是將其聲明爲私有或公共屬性會告知該類創建屬性。 很高興知道。我無法圍繞_why_這個語法應該與創建一個屬性有關。是因爲將它定義爲私有還是公共,意味着你暗示它會被重用? 對不起,如果這個問題沒有意義,我是相當新手。 但無論如何,謝謝你的答案。非常瞭解;) –
將構造函數參數分配給屬性非常常見,因此他們創建了這個語法shugar。如果省略'private'和'public',則不會創建屬性,並且'heroService'只存在於構造函數中。 –