angular / angular/angular

component events should mask event propagation.

Offen
#4,059 13 Kommentare 28 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
area: core core: event listeners core: inputs / outputs P3 state: confirmed type: bug/fix
Vorherrschende Sprache
TypeScript
Sterne
101k
Forks
27.5k
Ø Merge
1 T. 19 Std.
Gemergte PRs (30 T.)
288

Beschreibung

```
@Component({
selector: 'my-component'
events: ['change']
})
@View({
template: ''
})
class MyComponent {
}
```

The above code creates an issue. It conflates the `change` event from the `MyComponent` with the bubbling `change` event from the ``.

The correct behavior is that the `change` event which is part of the components should filter out the DOM `change` events. Otherwise

```

```

will sometimes get the `$event` from the `MyComponent` and sometimes from the `input` event.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, die Komponente und das Eingabebeispiel aus dem Issue zu reproduzieren und zu beobachten, welches change event den my-component handler erreicht. Verfolge das beteiligte component-event- und DOM-Bubbling-Verhalten; als abgeschlossen gilt die Aufgabe, wenn component change events nicht mehr mit gebubbelteten input change events vermischt werden oder diese empfangen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
angular, typescript
Bereich
frontend
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.