Angular问题

(1)表单中元素的name属性用于表单数据有效性的验证以及对数据变更的追踪
(2)模板的#变量值为变量指定引用指令的类型:#name="ngModule" #heroForm="ngForm";没有值时为临时模板引用变量
(3)需要在根组件NgModule类的declarations中声明该模块中的全部组件
(4)需要在根组件NgModule类的imports中添加angular模块的特性,如 BrowserModule
(5)main.ts ==> app.module ==> app.component
(6)在NgModule中声明在declarations数组中的类(组件、指令、管道),在一个应用程序中只能声明一次,且这个类必须属于某一个模块
(7)使用exports数组,导出的类在其他模块中能够使用
(8)只能在根模块中导入BrowserModule
(9)如果一个模块被多次导入时,angular会在第一次遇到时加载模块,后面不会再次加载
(10)Ngmodule中的服务提供商,当模块被导入时,它的提供商对整个应用程序的特性模块可见

(11)特性模块带有NgModule装饰器,特性模块的元数据与根模块的元数据属性一样。且特性模块与根模块共享相同的执行环境,共享同一个依赖注入器,但是他们是相对独立的。当特性模块的exports没有导出模块的任何组件时,根模块不能访问特性模块的组件。引导根模块启动应用,使用特性模块扩展应用;特性模块可以选择隐藏或显示自己的实现。
而惰性加载模块不是直接导入根模块的,而是通过路由的方式,当激活路由时才加载
RouterModule.forRoot() 以及 RouterModule.forChild()方法

(12)惰性加载模块的提供商只对该模块的可见(子注入器),不要依赖于“启动时加载”的提供商,使用惰性加载
(13)

架构图


image.png

你可能感兴趣的:(Angular问题)