microsoft / microsoft/TypeScript

Support labels in template string

Offen
#57,385 4 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.4k
Ø Merge
1 T. 19 Std.
Gemergte PRs (30 T.)
117

Beschreibung

🔍 Search Terms

template string label
template string name
interpolation label

✅ Viability Checklist
⭐ Suggestion

The idea is to allow the addition of labels into a template literal.
This has no effect on the type itself in any way, the sole purpose is to give a better DX.

These labels would be shown by IntelliSense in order to provide the same experience as labels for the tuple labels.

📃 Motivating Example
// Template literal today
type Options = {
   name: `${string}/${string}`;
}

// With labels
type Options = {
   name: `${scope: string}/${baseName: string}`;
}
💻 Use Cases

This would offer a slightly better DX.
Right now you can document the parts of the template in a JSDoc comment, but the JSDoc is not preserve by IntelliSense in some cases.

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 mit dem motivierenden Template-Literal-Beispiel und vergleiche es mit dem bestehenden IntelliSense-Verhalten bei Tupelbeschriftungen, auf das im Issue verwiesen wird. Die Arbeit ist abgeschlossen, wenn Template-Literal-Beschriftungen die IntelliSense-Dokumentation verbessern, ohne den Typ oder das erzeugte JavaScript-Verhalten zu ändern.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript
Bereich
compilers, developer-experience
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
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.