我们在实际项目中会拆分各个功能模块,以便页面复用,避免重复工作。那么,这里就涉及到组件之间的交互问题。例如常使用的,输入型数据绑定、setter截听、ngOnChanges()截听以及通过创建引入服务来通讯。这篇文章着重看下关于ngOnChanges()方法监听数据变更。Angular 组件交互 ngOnChanges 监听某一属性值变更www.deathghost.cn
有时候瞪大眼睛看文档,也会遗漏掉所谓“不起眼”的关键点。话又说回来,只有在遇到问题的时候才会去解决问题;如果一直没遇到,可能就不会知道它的存在。下面看看几种常用的组件交互方法,其他的参阅官方文档。
通过输入型绑定把数据从父组件传到子组件
例如:我们在父组件获取到用户ID将其传入组件。
那么在.TS中我们就可以通过@Input() 获取。
export class UserListComponent {
// ...
@Input() userId: number;
// ...
}
通过 setter 截听输入属性值的变化
export class UserListComponent {
private _userId: number;
@Input()
set userId(userId: number) {
this._userId= userId;
}
get userId(): number{ return this._userId; }
}<