更改ngFor循环中调用的组件内的父值

问题描述 投票:1回答:3

使用angular 7,我试图将一个对象传递给ngFor循环中的子组件,但是当我更改内部的值时,它不会在父级上更改。

在我的父母,我有

<div class="pieceContainer" *ngFor="let piece of data?.piece">
  <app-piece [(data)]="piece" (change)="doSomething(event$)"></app-piece>
</div>

在我的孩子我有以下,我改变模态内的数据的值,我尝试输出它:

@Input() data: any;
@Output() change: EventEmitter<any> = new EventEmitter<any>();

从模态我更改数据,然后按保存,我打电话:

this.change.emit(this.data);

有没有人知道为什么它不更新父组件中的对象值?谢谢

javascript html angular typescript
3个回答
0
投票

应该

@Output() dataChange: EventEmitter<any> = new EventEmitter<any>();

0
投票

您应该传递共享数据。只是微小的变化:

<app-piece [data]="piece" (change)="doSomething('data')"></app-piece>

0
投票

对于一些感兴趣的人来说,答案就是简单地把$ event而不是$ $。

© www.soinside.com 2019 - 2024. All rights reserved.