@NgModule 元数据
NgModule 是一个带有 @NgModule() 装饰器的类。
-
declarations(可声明对象表) —— 那些属于本 NgModule 的组件、指令、管道。
-
exports(导出表) —— 那些能在其它模块的组件模板中使用的可声明对象的子集。
-
imports(导入表) —— 那些导出了本模块中的组件模板所需的类的其它模块。
-
providers —— 本模块向全局服务中贡献的那些服务的创建器。 这些服务能被本应用中的任何部分使用。(你也可以在组件级别指定服务提供商,这通常是首选方式。)
-
bootstrap —— 应用的主视图,称为根组件。它是应用中所有其它视图的宿主。只有根模块才应该设置这个 bootstrap 属性。
NgModule 系统与 JavaScript(ES2015)用来管理 JavaScript 对象的模块系统不同,而且也没有直接关联。 这两种模块系统不同但互补。你可以使用它们来共同编写你的应用。
JavaScript 中,每个文件是一个模块,文件中定义的所有对象都从属于那个模块。 通过 export 关键字,模块可以把它的某些对象声明为公共的。 其它 JavaScript 模块可以使用import 语句来访问这些公共对象。
angular自带的库
根模块就是你用来启动此应用的模块。 按照惯例,它通常命名为 AppModule。