microsoft / microsoft/TypeScript

Add readonly for all possible function parameter for lib.dom.d.ts

Offen
#38,258 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bug Domain: lib.d.ts
Vorherrschende Sprache
Go
Sterne
111k
Forks
14.3k
Ø Merge
1 T. 19 Std.
Gemergte PRs (30 T.)
117

Beschreibung

Search Terms

library, dom

Suggestion

Add readonly for all possible function parameter for lib.dom.d.ts

Examples

Here is an example for add readonly props for constructor:

declare var URLSearchParams: {
    prototype: URLSearchParams;
    new(init?: string[][] | Record<string, string> | string | URLSearchParams): URLSearchParams;
    toString(): string;
};

It should be

declare var URLSearchParams: {
    prototype: URLSearchParams;
    new(init?: ReadonlyArray<readonly [string,string]> | Readonly<Record<string, string>> | string | URLSearchParams): URLSearchParams;
    toString(): string;
};

then I can use

const myGlobalConfig = {
    myURLSearchParamsInit1: [['foo','bar']],
    myURLSearchParamsInit2: {foo:'bar'}
} as const;
const params = new URLSearchParams(myGlobalConfig.myURLSearchParamsInit1)

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 damit, die URLSearchParams-Deklaration in lib.dom.d.ts zu lesen und ihre Konstruktorparametertypen mit dem readonly-Beispiel im Issue zu vergleichen. Bestimme, welche anderen Funktionsparameter geeignet sind und wie umfassend die Änderung angewendet werden sollte. Als abgeschlossen gilt die Änderung, wenn die relevanten Deklarationen in lib.dom.d.ts konsistent readonly-Eingaben akzeptieren, ohne ihre beabsichtigte API zu ändern.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript
Bereich
compilers
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

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