Angular 角度2组件与对象的父子通信
当您为子组件指定基本值(字符串、数字、布尔值)时,创建父组件和子组件时,您必须使用eventemitter创建@Input和@Output以获得双向通信。到目前为止还不错 但是,当我仅使用@Input将复杂对象指定给子组件,并在对象内部更改一些值时,我也会在父组件中看到这些更改。因为我正在编辑对象引用Angular 角度2组件与对象的父子通信,angular,data-binding,Angular,Data Binding,当您为子组件指定基本值(字符串、数字、布尔值)时,创建父组件和子组件时,您必须使用eventemitter创建@Input和@Output以获得双向通信。到目前为止还不错 但是,当我仅使用@Input将复杂对象指定给子组件,并在对象内部更改一些值时,我也会在父组件中看到这些更改。因为我正在编辑对象引用 所以我的问题是,我应该避免在我的子组件中设置复杂的对象,还是这是一种糟糕的做法?是否存在任何问题,或者是否可以像“双向数据绑定”一样使用它 创建具有相关属性的模型 export interface
所以我的问题是,我应该避免在我的子组件中设置复杂的对象,还是这是一种糟糕的做法?是否存在任何问题,或者是否可以像“双向数据绑定”一样使用它 创建具有相关属性的模型
export interface InputModel {
a:string;
b:number;
c:boolean;
}
创建此类型的@Input属性
@Input() obj : InputModel
通过这种方式,可以更改输入对象的任何属性
ngOnChanges()
将被触发,可用于处理您的操作是的,这很清楚,但我是否需要注意任何问题?还是可以用这个?因为我有一个“简单的”伪“双向数据绑定”