1
與角CLI創建我的組件我從來沒有加入import 'rxjs/add/operator/first';
角CLI rxjs經營者在進口
然而,使用this.route.params.first()
仍然工作。爲什麼?
是否有可能不必在每個文件中導入大量的操作符?
與角CLI創建我的組件我從來沒有加入import 'rxjs/add/operator/first';
角CLI rxjs經營者在進口
然而,使用this.route.params.first()
仍然工作。爲什麼?
是否有可能不必在每個文件中導入大量的操作符?
進口喜歡
import 'rxjs/add/operator/first';
看到跳線設置到Observable
原型操作。見the source。
這種導入不需要在每個文件的基礎上進行。他們只需要導入一次 - 之後,操作員可以通過原型進行調用。
此外,如果您正在導入的另一個庫恰好使用該導入,則原型將被修補並且操作員將可用。出於這個原因,一些圖書館 - 比如Angular--在不修補原型的情況下明確導入操作符。 (這樣,客戶端代碼將不依賴於任何原型補丁導入,否則這些導入將由Angular實現,並且在Angular中導入可以在不破壞客戶端代碼的情況下刪除。)
有關於各種進口機制the docs。
此外,前一段時間,我公開了一套TSLint規則來幫助管理這些RxJS導入類型:https://github.com/cartant/rxjs-tslint-rules – cartant