Angular2筆記:NgModule


Angular的模塊的目的是用來組織app的邏輯結構。
在ng中使用@NgModule修飾的class就被認為是一個ng module。NgModule可以管理模塊內部的Components、Directives、Pipes,引入Service,並控制外部組件對內部成員的訪問權限。
NgModule的主要屬性如下:
declarations:模塊內部Components/Directives/Pipes的列表,聲明一下這個模塊內部成員
providers:模塊內部成員能夠訪問使用的Service;內部和外部Service都可以放在這里聲明,因為Service的權限控制依賴於ng的DI而不是module。
ng會把這些providers注冊到module運行上下文的根級injector
imports:導入其他module,其它module暴露的出的Components、Directives、Pipes等可以在本module的組件中被使用。比如導入CommonModule后就可以使用NgIf、NgFor等指令。
exports:用來控制將哪些內部成員暴露給外部使用。
導入一個module並不意味着會自動導入這個module內部導入的module所暴露出的公共成員。除非導入的這個module把它內部導入的module寫到exports中。
bootstrap:通常是app啟動的根組件,一般只有一個component。bootstrap中的組件會自動被放入到entryComponents中。
entryCompoenents: 不會再模板中被引用到的組件。這個屬性一般情況下只有ng自己使用,一般是bootstrap組件或者路由組件,ng會自動把bootstrap、路由組件放入其中。
除非不通過路由動態將component加入到dom中,否則不會用到這個屬性。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM