microsoft / microsoft/TypeScript
Add readonly for all possible function parameter for lib.dom.d.ts
Dieses Issue hat noch niemand übernommen.
- 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
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Ö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