/ / Poslucháč udalostí nadradeného komponentu Angular 4 sa nespustí udalosťou, ktorá bola vyvolaná dieťaťom - javascript, angular

Užívateľ udalosti uhlovej 4 rodičovskej zložky sa nespustí podujatím vyžarovaným deťom - javascript, angular

Snažím sa odovzdať výstup z dieťaťa jeho rodičovi, nie ste si istí, prečo to práve vyhralo,

dieťa:

natierač:

@Component({
selector: "child",
templateUrl: "./child.component.html",
styleUrls: ["./child.component.css"]
})

@Output() notify: EventEmitter<string> = new EventEmitter<string>();
onClick(){
this.notify.emit("msg from child component");
}

dovoz:

import { Component, OnInit, EventEmitter, Output } from "@angular/core";

šablóna:

<button (click)="onClick()"> search </button>

parent:

onNotifyClicked(message: string): void {
this.showMsg = message;
}

šablóna:

<child (notify)="onNotifyClicked($event)"> </child>

Dostanem sa do stavu, v ktorom sa vysiela upozornenie (this.notify.emit ("msg from search komponent"); behy, pri vysielaní nebola vyvolaná žiadna chyba) ale nikdy sa nedostanem do rodičovskej obsluhy naNotifyClicked (),

odpovede:

0 pre odpoveď č. 1

Zmeňte premennú ako,

@Output()
notify = new EventEmitter<string>();

0 pre odpoveď č. 2

Váš kód by mal fungovať, pokiaľ nie je váš rodičpočúvanie nie v detskej súčasti priamo (ako vo vašom príspevku), ale u jedného z jej rodičov. Uhlové nepodporuje bublinu udalostí, takže ak má nadradená súčasť niečo ako ukážka kódu nižšie, nedostane správu:

<div (notify)="onNotifyClicked($event)">
<child></child>
</div>

0 pre odpoveď č. 3

Moje kroky boli správne, musel som reštartovať zariadenie, ktokoľvek sa sem dostane - nestrácajte čas čítaním tohto prípadu použitia.