1、模块
Angular 应用是模块化的,并且 Angular 有自己的模块系统,它被称为 Angular 模块或 NgModules。每个模块都是一个内聚的代码块专注于某个应用领域、工作流或紧密相关的功能。
每个 Angular 应用至少有一个模块(根模块),习惯上命名为AppModule。Angular 模块(无论是根模块还是特性模块)都是一个带有@NgModule装饰器的类。
ngModule是一个装饰器函数,接受一个用来描述模块属性的元数据对象。其中最重要属性是:
a、declarations–声明本模块中拥有的视图类:组件、指令、和管道。
b、exports–declarations的子集,可用于其他模块的组件模板。
c、imports–本模块声明的组件模板需要的类所在的其他模块
d、providers–服务的创建者,并加入到全局服务列表中,可用于应用任何部分。
e、bootstarp–指定应用视图的主视图,是所有其他视图的宿主(称为根组件)。只有根模块能设置bootstrap属性。
2.组件
组件负责控制屏幕上的一小块区域,我们称之为视图。
当用户在这个应用中漫游时, Angular 会创建、更新和销毁组件。 应用可以通过生命周期钩子在组件生命周期的各个时间点上插入自己的操作,例如上面声明的ngOnInit()。
3.模板:templates
模板以 HTML 形式存在,告诉 Angular 如何渲染组件。通过组件的自带的模板来定义组件视图。
4.元数据:Metadata
元数据告诉大家如何处理一个类。