Diese Seite ist eine Übersetzung der englischen Dokumentation. Befehle, Bezeichner und Beispiele bleiben unverändert. Runtime 7.24.4 · SDK 2.6.7. Englische Fassung
Native TypeScript-Unterstützung
Status: Im Quelltext aktiv; Veröffentlichung der gepackten Laufzeit steht aus Geltungsbereich: aktueller Stand der Quell-Werkzeugkette und des Language Service Zuletzt geprüft: 2026-09-14 Verantwortlich: Betreuende von AX Code
AX Code verwendet den offiziellen, auf Go basierenden TypeScript-Compiler 7.0.2 für Prüfungen des
Arbeitsbereichs, die SDK-Ausgabe und den eingebauten Language Server für JavaScript und TypeScript.
Der Language Server führt die mitgelieferte native ausführbare Datei direkt mit
--lsp --stdio aus. Er ruft keinen Runner aus einer Registry auf und lädt keine unfestgelegte
Version des Language Servers herunter. Für die Nutzung von AX Code ist keine Go-Werkzeugkette erforderlich.
Installieren Sie Abhängigkeiten mit pnpm install, einschließlich optionaler Abhängigkeiten.
Der native Compiler braucht das passende Paket für Betriebssystem und CPU. Eigenständige Builds stellen
dieses Paket vor der Auslieferung bereit und prüfen es. Eine fehlende oder nicht passende Binärdatei erzeugt
eine umsetzbare Fehlermeldung, statt still einen JavaScript-Server zu starten.
Kompatibilität der Compiler-API
Der Arbeitsbereich legt @typescript/native auf npm:typescript@7.0.2 fest und hält
typescript als Alias auf npm:@typescript/typescript6@6.0.2 für Werkzeuge, die die
ältere JavaScript Compiler API importieren. Typprüfungen und die SDK-Ausgabe verwenden den nativen
Compiler. Die Kompatibilitäts-API ist nicht der voreingestellte Language Server.
Werkzeuge für Vue, Svelte und Astro verwenden ihre eigene Serverintegration; die Kompatibilität der TypeScript-Bibliothek begründet keine Unterstützung für Compiler-Plugins. Die JSX-Umwandlung von SolidJS läuft weiterhin über Babel. Laufzeittests und erzeugte Artefakte müssen unabhängig von einer erfolgreichen Typprüfung bestehen.
Diagnosen und Speicher
Native TypeScript verwendet Pull-Diagnosen. AX Code fordert sie an, wenn ein Aufrufer auf Diagnosen warten möchte oder das Diagnoseinventar einsammelt. Eine Datei nur zu synchronisieren wartet nicht auf die Typprüfung. Bearbeitungen machen abhängige zwischengespeicherte Ergebnisse ungültig; veraltete, ausstehende oder fehlgeschlagene Inventare werden von der zusammengefassten Diagnose-API als teilweise oder herabgesetzt gemeldet. Ein erfolgreicher Abruf aktualisiert diese Datei. Anforderungen zur Serveraktualisierung kennzeichnen zwischengespeicherte Ergebnisse als veraltet; die nächste Diagnoseanfrage aktualisiert sie bei Bedarf. Hintergrundverkehr des Servers verlängert die Leerlaufdauer nicht. Dateibearbeitungen können zuvor angeforderte Dokumente weiterhin im Hintergrund aktualisieren. Die API der Rohaufzeichnung aktualisiert veraltete Ergebnisse innerhalb eines begrenzten Sammelbudgets und lehnt unvollständige Inventare ab; Bearbeitungswerkzeuge legen diesen Zustand offen, ohne die erfolgreiche Dateibearbeitung zu verlieren. Andere Language Server behalten ihr bestehendes Verhalten mit Push-Diagnosen.
Überlappende ausdrückliche Diagnosewarten für dieselbe Datei teilen sich eine Anfrage nur innerhalb derselben Generation des Arbeitsbereichs. Aufeinanderfolgende Anfragen aktualisieren weiterhin; eine Änderung des Arbeitsbereichs verhindert die Wiederverwendung einer älteren noch laufenden Anfrage. Aktualisierungen im Hintergrund und des Inventars prüfen die Aktualität erneut, nachdem sie auf eine Dokumentsperre gewartet haben.
Erfolgreiche Löschungen und Verschiebungen eines Patches schließen die entfernten Quelldokumente im Language Service. Fehlgeschlagene Patch-Transaktionen behalten ihren Dokumentzustand. Die Bereinigung hat eine gemeinsame Frist von zwei Sekunden und überspringt Pfade, die ein späterer Vorgang im selben Patch neu anlegt. Eine unvollständige Bereinigung wird offengelegt, ohne gespeicherte Bearbeitungen rückgängig zu machen. Läuft die Zustellung an den Server in eine Zeitüberschreitung, bleiben die Diagnosen unvollständig, bis dieser Client neu startet.
Language Server im Leerlauf werden nach 30 Minuten im normalen Speicherprofil
zurückgenommen, oder nach fünf Minuten mit AX_CODE_MEMORY_PROFILE=low. Die Rücknahme läuft im
bestehenden Intervall der Gesundheitsprüfung von einer Minute und wartet, bis aktive und eingereihte
Anfragen zur Ruhe kommen. Server starten bei Bedarf neu. AX_CODE_LSP_IDLE_MS überschreibt
die Leerlaufdauer in Millisekunden; 0 deaktiviert die Rücknahme im Leerlauf. Ungültige Werte
verwenden die Voreinstellung des Profils. Diese Einstellungen setzen keine Obergrenze für den Prozess-RAM und
kein rechnerweites Budget. Spekulative Vorwärmung bleibt optional.
Einen Server zurückzunehmen verwirft sein Diagnoseinventar. Zusammengefasste Ergebnisse bleiben als herabgesetzt gekennzeichnet, bis zuvor geöffnete Dokumente erneut geöffnet und geprüft oder ausdrücklich entfernt wurden. Die API des Rohinventars lehnt unvollständige Abdeckung ab. Das Abdeckungsjournal ist auf 2.000 Pfade begrenzt; ein Überlauf bleibt konservativ unvollständig, bis die Projektinstanz freigegeben wird. Einen leeren Server zurückzunehmen verliert keine Abdeckung. Bearbeitungswerkzeuge bewahren gespeicherte Änderungen und legen offen, dass die Diagnosen unvollständig sind. Verwenden Sie eine vollständige Typprüfung des Projekts, um festzustellen, ob das Projekt sauber ist.
Native Kompilierung garantiert keine bestimmte Verringerung des residenten Speichers. Vergleichen Sie dasselbe Projekt, dieselben geöffneten Dokumente, dieselben Anfragen und den RSS des Prozessbaums, bevor Sie eine Aussage zum Speicher treffen.
Ausdrückliche Überschreibung des Servers
Eine bestehende vertrauenswürdige Konfiguration lsp.typescript.command überschreibt weiterhin den
eingebauten nativen Server. Installieren und legen Sie für einen älteren Server den Server und sein
kompatibles TypeScript-SDK im Projekt fest und setzen Sie dann command auf diese installierte
ausführbare Datei mit --stdio. Vermeiden Sie nicht festgelegte Befehle npx. Die Überschreibung ist ausdrücklich;
AX Code fällt nicht automatisch zurück, wenn der native Compiler nicht verfügbar ist.
Upstream: Ankündigung von TypeScript 7.
Kompatibilität gespeicherter Dokumente in TypeScript 7.0.2
Der native Server 7.0.2 kann einen früheren Diagnose-Snapshot zurückgeben, wenn Verkehr der Dateiüberwachung mit gespeicherten Bearbeitungen überlappt. AX Code schließt geänderte Dokumente und öffnet sie für genau diese Serverversion erneut, bevor Diagnosen angefordert werden. Eine begrenzte Dokumentabfrage leert das aufgeschobene Schließen vor dem erneuten Öffnen; andere Abfragen warten auf diesen Ersatz. Dabei wird das vollständig geänderte Dokument gesendet; unveränderte Dokumente verwenden überlappende Anfragen weiterhin gemeinsam. Andere Serverversionen behalten ihren ausgehandelten Synchronisationsmodus. Ein unterbrochener Ersatz bleibt unvollständig, bis der Language Server neu startet.