将父组件中的对象数组传递给子组件的最佳方式(子组件将嵌套在父组件中)?在父组件和子组件之间交换数据
将数组传递给子组件后,我必须处理它以提取信息并在视图中显示(因此我必须在显示子组件之前处理收到的数据)。
将父组件中的对象数组传递给子组件的最佳方式(子组件将嵌套在父组件中)?在父组件和子组件之间交换数据
将数组传递给子组件后,我必须处理它以提取信息并在视图中显示(因此我必须在显示子组件之前处理收到的数据)。
简单地把它作为一个输入:
<child [data]="myArray"></child>
子类:
export class ChildComponent {
@Input() data: any[];
}
这将让你通过this.data
访问数据的ChildComponent
。要对数据的更改作出反应,您可以使用ngOnChanges
或使用set
和get
方法。
我已经这样做了,但是在“日期:任何[]”我无法访问的“ChildComponent”里面“ –
如果我尝试访问应用程序崩溃 –
@MaurizioRizzo因为它是'data',而不是'date'就像你说的。 – Chrillewoodz
您是否在文档中阅读过[整页](https://angular.io/docs/ts/latest/cookbook/component-communication.html)或在此查找其他类似问题? – jonrsharpe
为此使用'@ Input'。请记住初始化父数组中的数组(作为空),以便在传递子标记中的数组时不会未定义数组。由于您需要在显示前处理子数组,因此可能需要在视图中使用安全导航运算符。作为一个旁注,总是分享代码来澄清你的问题,能够得到一些体面的答案,以及没有得到一堆downvotes;) – Alex
完美的,它的作品。如果我想传递多个对象? –