我正在尝试理解angular2中的OnInit功能并阅读文档:
描述
实现此接口以在之后执行自定义初始化逻辑 您的指令的数据绑定属性已初始化。
在指令的数据绑定属性之后立即调用ngOnInit 已经第一次检查,并在其任何一个孩子之前 已经过检查。它仅在指令时调用一次 实例
我不明白directive's data-bound properties
这是什么意思?
答案 0 :(得分:16)
当你有一个组件
@Component({
selector: 'my-component'
})
class MyComponent {
@Input() name:string;
ngOnChanges(changes) {
}
ngOnInit() {
}
}
你可以像
一样使用它<my-component [name]="somePropInParent"></my-component>
这使name
成为数据绑定属性。
当somePropInParent
的值发生变化时,Angulars会更改检测更新name
并调用ngOnChanges()
第一次调用ngOnChanges()
后,调用ngOnInit()
一次,表示初始绑定([name]="somePropInParent"
)已解决并已应用。
有关详细信息,请参阅https://angular.io/docs/ts/latest/cookbook/component-communication.html
答案 1 :(得分:1)
@Sasuke Uchiha,@Input 和数据绑定属性确实是一样的。请阅读 {{3 }}
PS:无法评论答案,所以这样回复
答案 2 :(得分:0)
@Input 是修饰符,它将类字段用作 input属性,并提供配置元数据。 输入属性绑定到模板中的DOM属性。 在更改检测期间,Angular 会自动使用DOM属性的值更新data属性。
我希望这个答案可能有助于理解这个概念。
上面的示例包含名称作为输入,该输入绑定为DOM结构中组件的属性,并根据更改对其进行角度更新。
答案 3 :(得分:-1)
数据绑定属性只是类的属性