2016-08-12 73 views

回答

2

<HeroService> {getHeroes:() => expectedHeroes }對應HeroService類的強制類型斷言。返回的對象將遵循這個類的結構。

new EventEmitter<Hero>();是一種參數化EventEmitter類(泛型)的方法,告訴它它將處理Hero類型的元素。對於EventEmitter類(請參閱https://github.com/angular/angular/blob/master/modules/%40angular/facade/src/async.ts#L80),它確保用作emit方法參數的對象必須是Hero類型。

請參見以下鏈接瞭解詳情:

+0

謝謝,是否還有那個<>語法的用法?你有一個全面的<>語法用法的鏈接嗎?我很驚訝,我沒有找到任何。 – shrimpdrake

+1

我推薦https://basarat.gitbooks.io/typescript/content/docs/types/type-assertion.html和https://www.typescriptlang.org/docs/handbook/generics.html –

2

他們被稱爲 「類型斷言」,並在TypeScript manual記錄。

順便說一句,最好不要稱他們爲「casts」。它向編譯器「斷言」一個值應該被認爲是一種特定的類型。如果你把它想象成一種它不可能的類型,它將會不高興。換言之,聲明的類型必須是較窄的。還請注意值後的替代語法as Type,該值更具可讀性並避免與React發生衝突。

相關問題