观察子组件中的@Output事件发射器?

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

应该如何在子组件中使用/观察父级

@Output()
事件发射器?

例如在这个演示中子组件使用

@Output onGreetingChange
,如下所示:

<app-greeting [greeting]="onGreetingChange | async"></app-greeting>

如果

onGreetingChange
AfterViewInit
生命周期钩子中发出,这将起作用。

  ngAfterViewInit() {
    this.onGreetingChange.emit('Hola');
  }

但是这会产生

ExpressionChangedAfterItHasBeenCheckedError
错误。

有没有办法让它工作而不产生错误?

我尝试在

constructor
OnInit
中发射。想法?

javascript angular typescript rxjs observable
1个回答
0
投票

您可以使用

change detection
 手动触发 
detectChanges()

  ngAfterViewInit() {
    this.onGreetingChange.emit('Hola');
    this.cdr.detectChanges();
  }

堆栈闪电战

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