microsoft / microsoft/TypeScript

Rename field to a name with dash does not transform the field with quotes.

Offen
#30,879 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

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

Beschreibung

TypeScript Version: 3.5.0-dev.20190412

Search Terms: hyphen refactor, dash rename

Code

interface TestObject {
    test:string
}
const instance: TestObject = { test: "hello" };
console.log(instance.test);

Rename "test" to a variable with a hyphen, e.g "te-st"

Expected behavior:
Code is refactored to use quotes:

interface TestObject {
    "te-st":string
}
const instance: TestObject = { "te-st": "hello" };
console.log(instance["te-st"]);

Actual behavior:

Refactor replaces the variable as given, producing invalid code

interface TestObject {
    te-st:string
}
const instance: TestObject = { te-st: "hello" };
console.log(instance.te-st);

Playground Link: Replacing all occurrences in the playground also includes all Test matches, so I tested this in vscode

Related Issues: none I could find

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

Führe die Umbenennung in VS Code anhand des TypeScript-Beispiels nach und ändere test in te-st. Verfolge das Verhalten des Umbenennungs-Refactorings für die Schnittstelleneigenschaft, das Objektliteral und den Memberzugriff; abgeschlossen ist die Aufgabe, wenn alle betroffenen Verweise wie in der erwarteten Ausgabe gültige Eigenschaften in Anführungszeichen und den Zugriff mit eckigen Klammern verwenden und eine Regressionstestabdeckung in der relevanten Testsuite hinzugefügt wurde.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

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

Neue Issues direkt in Ihr Postfach

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