Respect the string option in JSON struct tags
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 78/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- go, typescript
- Bereich
- build-system
Rechercherichtung
Lies zunächst die Behandlung von Go-JSON-Struktur-Tags im Parser und die Tests für generierte TypeScript-Feldtypen. Reproduziere das Beispiel mit json:",string" und prüfe, wie sich der Tag auf den generierten Typ auswirkt. Erledigt, wenn das Feld Priority als string ausgegeben wird und die relevanten Tests bestehen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Guts v1.7.1 generates a TypeScript number for an integer field tagged with json:",string", although Go encodes that field as a JSON string.
Example:
package example
type Constraint struct {
Priority int64 `json:"priority,string"`
}
parser, err := guts.NewGolangParser()
if err != nil {
panic(err)
}
if err := parser.IncludeGenerate("main/example"); err != nil {
panic(err)
}
ts, err := parser.ToTypescript()
if err != nil {
panic(err)
}
ts.ApplyMutations(config.ExportTypes)
output, err := ts.Serialize()
if err != nil {
panic(err)
}
fmt.Println(output)
Output:
export interface Constraint {
priority: number;
}
Expected output:
export interface Constraint {
priority: string;
}
The generated type currently disagrees with the JSON representation. Mutating the generated field type works around this, but duplicates information already present in the JSON tag.
- Vorherrschende Sprache
- Go
- Sterne
- 325
- Forks
- 11
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus coder/guts
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 15/100
-
question
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
-
Improve error handlingOffenhelp wanted
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
VictoriaMetrics/operator#2772 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Gaurav-Gosain/tuios#1316 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:auth documentation priority:low
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 86/100
Maintainer antworten meist innerhalb von 1 Tag
-
Mend: dependency security vulnerability
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
kube-tarian/sigrun#203 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
kubernetes-csi/csi-driver-iscsi#485 ·
Maintainer antworten meist innerhalb von 1 Tag