TypeScript 3.7.2 - Die Unterstützung für die experimentelle Syntax 'optionalChaining' ist derzeit nicht aktiviert


12

In meinem Projekt verwende ich TS 3.7.2, das die optionale Verkettung unterstützen sollte. Aber wenn ich versuche, es so zu benutzen: const state = urlParams.state?.toString()Ich bekomme den Fehler:

Die Unterstützung für die experimentelle Syntax 'optionalChaining' ist derzeit nicht aktiviert

Fügen Sie @ babel / plugin-comment-optional-chaining ( https://git.io/vb4Sk ) zum Abschnitt 'plugins' Ihrer Babel-Konfiguration hinzu, um die Transformation zu aktivieren.

Ich habe die Versionshinweise überprüft und keine Anforderungen zum Hinzufügen von tsconfig-Optionen für diese Funktion festgestellt.

Ich frage mich, ob ich Babel Plugin & Config benötige, wenn ich TS bereits verwende, und wie soll ich den Fehler beheben?


1
klingt so, als ob Sie die Create-React-App verwenden. Als ich das letzte Mal überprüft habe, unterstützt dies optionalChaining in der verwendeten Babel-Konfiguration nicht. Updates finden Sie in dieser Ausgabe: github.com/facebook/create-react-app/issues/7940
Ben Clayton

@ BenClayton danke! Ich hoffe, sie werden das Update so schnell wie möglich veröffentlichen. Könnten Sie Ihren Kommentar als Antwort posten, damit ich ihn als gelöst markieren kann?
Flppv

Ich habe eine Antwort hinzugefügt
Ben Clayton

Antworten:


12

Dies klingt so, als würden Sie eine ältere Version der Create-React-App verwenden.

Versionen vor Version 3.3 unterstützen optionalChaining in der verwendeten Babel-Konfiguration nicht.

Unterstützung wurde in CRA v3.3 hinzugefügt. Weitere Antworten zum Upgrade finden Sie in anderen Antworten.


9

Gelöst mit einer Version von CRA v3.3.0 . Wenn jemand immer noch den gleichen Fehler wie im Titel hat, stellen Sie sicher, dass Sie das react-scriptsPaket aktualisiert haben .


2
Das Aktualisieren ist auch ziemlich schnell und einfach:yarn add --exact react-scripts@3.3.0
Counterbeing
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.