microsoft / microsoft/TypeScript

The type of Document.documentElement could be SVGSVGElement

Offen
#29,052 4 Kommentare 4 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Revisit Suggestion
Vorherrschende Sprache
Go
Sterne
111k
Forks
14.3k
Ø Merge
2 T. 4 Std.
Gemergte PRs (30 T.)
132

Beschreibung

Currently, the type of Document.documentElement is HTMLElement:

https://github.com/Microsoft/TypeScript/blob/4d74f67325d305f52a2b00b4f30b5a4f3210c649/lib/lib.dom.d.ts#L4124

But it is possible for a Document’s documentElement property to be of type SVGSVGElement which is not a subtype of HTMLElement:

Try to run the following code:

const d = (new DOMParser()).parseFromString('<svg xmlns="http://www.w3.org/2000/svg"></svg>', 'image/svg+xml');
const k = (d instanceof Document) && (d.documentElement instanceof SVGSVGElement);

the value of k should be true.

Also, why isn’t there a SVGDocument in TypeScript?

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne bei lib/lib.dom.d.ts, der verknüpften Deklaration für Document.documentElement, und reproduziere das DOMParser-SVG-Beispiel. Als erledigt gilt die Aufgabe, wenn die DOM-Typings das demonstrierte SVG documentElement korrekt zulassen und die SVGDocument-Frage des Issues geklärt ist und die relevanten Deklarationsprüfungen erfolgreich sind.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript
Bereich
frontend
Issue-Typ
Bug
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
42/100

Neue Issues direkt in Ihr Postfach

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