microsoft / microsoft/TypeScript

Refine JSON.stringify return type for booean value

Offen
#38,160 0 Kommentare 2 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

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

Beschreibung

Search Terms

JSON.stringify "true" "false"

Suggestion

I'd like to have additional typings for the return type of JSON.stringify, namely when given a boolean, the return type should be 'true' | 'false'

Use Cases

In React assigning the ARIA boolean attributes requires a boolean-string, currently you have to do:

<div aria-expanded={isExpanded ? 'true' : 'false'}/>

With the change you could simplify that to:

<div aria-expanded={JSON.stringify(isExpanded)}/>

Examples

const r1: 'true' | 'false' = JSON.stringify(true);
// Or if we could have it be even more granular:
const r2a: 'true' = JSON.stringify(true);
const r2b: 'false' = JSON.stringify(false);
``

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

In der Issue wird kein Datei- oder Testpfad genannt. Beginne damit, die TypeScript-Deklaration und die vorhandenen Tests für JSON.stringify zu finden, und vergleiche dann boolesche Eingaben mit den angeforderten literalen Rückgabetypen. Als erledigt gilt die Aufgabe, wenn die booleschen Beispiele mit dem beabsichtigten Rückgabetyp type-checken und das bestehende stringify-Verhalten weiterhin abgedeckt ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript
Bereich
compilers
Issue-Typ
Feature
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.