host bindings: empty `[]` / `()` keys accepted, and `aria-*` host bindings stay DOM properties
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 56/100
Rechercherichtung
Start by reading binding_specialization.rs, especially is_aria_attribute and specialize_bindings_for_host, then trace where host binding keys are parsed and validated. Reproduce the empty [] and () cases and the host aria-* cases against the issue’s ngtsc examples. Done when empty keys produce missing-name errors and host aria-* bindings compile as attributes.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Found while reviewing #697. Checked against ngtsc 22.2.4.
1. Empty [] / () host keys are accepted
@Directive({ selector: '[d]', host: { '[]': 'a', '()': 'b()' } })
ngtsc error NG5001: Property name is missing in binding / Event name is missing in binding
Oxc no error; emits ɵɵlistener("", …) and ɵɵdomProperty("", ctx.a)
2. Host aria-* bindings stay DOM properties
@Directive({ selector: '[d]', host: { '[aria-label]': 'l' } })
export class D { l = 'a'; @HostBinding('aria-hidden') h = true; }
ngtsc ɵɵattribute("aria-label", ctx.l)("aria-hidden", ctx.h)
Oxc ɵɵdomProperty("aria-label", ctx.l)("aria-hidden", ctx.h)
binding_specialization.rs rewrites aria-* to an attribute only for templates (is_aria_attribute), not in specialize_bindings_for_host.
- Vorherrschende Sprache
- Rust
- Sterne
- 245
- Forks
- 26
- Ø Merge
- 1 T. 23 Min.
- Gemergte PRs (30 T.)
- 83
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus voidzero-dev/oxc-angular-compiler
-
partial: host binding map keys are not always quoted like ngtsc (`click:` vs `"click":`)Evtl. vergeben @Brooooooklyn hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
voidzero-dev/oxc-angular-compiler#686 ·
Maintainer antworten meist innerhalb von 1 Tag
-
output: non-ASCII text not escaped like ngtsc; linker adds `changeDetection: 1` for v19 / v20.1Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 58/100
voidzero-dev/oxc-angular-compiler#707 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 45/100
voidzero-dev/oxc-angular-compiler#706 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 46/100
voidzero-dev/oxc-angular-compiler#705 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
voidzero-dev/oxc-angular-compiler#703 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in voidzero-dev/oxc-angular-compiler
Ähnliche Issues
-
Panic on live viewport resize when unstyled elements exist in display: none subtreeEvtl. vergeben @GoCoder7 hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
DioxusLabs/blitz#1488 ·
Maintainer antworten meist innerhalb von 1 Tag
-
🏷️ good first issue enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
Maintainer antworten meist innerhalb von 1 Tag
-
S-Needs triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 77/100
vectordotdev/vrl#2042 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
Maintainer antworten meist innerhalb von 1 Tag