1,生命周期
日志信息的日志和所规定的钩子调用顺序是一致的:
constructor()
OnInit //表示组件指令加载完成
DoCheck
(3x)
AfterContentChecked
(3x)
AfterViewChecked
(3x)
构造函数中除了使用简单的值对局部变量进行初始化之外,什么都不应该做。
2, *ngFor 原理 Angular 会把 *ngFor
用同样的方式把星号(*
)语法的 template
属性转换成 <ng-template>
元素。
1,修改 *ngFor
指令,在遍历列表的过程中把 array
数组中的每个索引赋值给 userId
变量。
*ngFor="let item of array; index as userId"//表示将index 赋值给 userId 属性
3,Angular 使用双向数据绑定先导入import { FormsModule } from '@angular/forms';
在app.moudel 中引入FormsModule
imports: [
BrowserModule,
FormsModule
]
4,服务的使用
4.1 ng g service 名字 创建服务 自动引入服务到 app.moudel import {StorageService} from './services/storage.service'
4.2 providers 引入服务
@NgModule({
declarations: [ //引入App中定义的组件
AppComponent,
NewsComponent,
SearchComponent
],
imports: [//引入第三方组件
BrowserModule,
FormsModule
],
providers: [StorageService],// 引入App定义的服务
bootstrap: [AppComponent] //App启动的主视图
})
4.3 在模块中引入服务 import { StorageService } from '../../services/storage.service';
4.4 模块对应的构造其中初始化 constructor(public storage:StorageService) 相当于对storage 实例化