Dapatkan AX Code · GratisDokumentasi

Halaman ini diterjemahkan dari dokumentasi bahasa Inggris. Perintah, pengenal, dan contoh tidak diubah. Runtime 7.24.4 · SDK 2.6.7. Sumber bahasa Inggris

Dukungan native TypeScript

Status: Aktif di sumber; rilis runtime terpaket masih tertunda Cakupan: rantai alat sumber dan layanan bahasa pada keadaan saat ini Terakhir ditinjau: 2026-09-14 Pemilik: pengelola AX Code

AX Code memakai kompiler TypeScript 7.0.2 resmi berbasis Go untuk pemeriksaan workspace, emisi SDK, dan server bahasa JavaScript/TypeScript bawaannya. Server bahasa menjalankan berkas native yang dikirim secara langsung dengan --lsp --stdio. Ia tidak memanggil pelari registri atau mengunduh versi server bahasa yang mengambang. Tidak perlu rantai alat Go untuk memakai AX Code.

Pasang dependensi dengan pnpm install, termasuk dependensi opsional. Kompiler native memerlukan paket OS/CPU yang cocok. Build mandiri menempatkan dan memverifikasi paket itu sebelum pengiriman. Biner yang hilang atau tidak cocok menghasilkan kesalahan yang dapat ditindaklanjuti, bukan diam-diam memulai server JavaScript.

Kompatibilitas API kompiler

Workspace menyematkan @typescript/native ke npm:typescript@7.0.2 dan mempertahankan typescript sebagai alias npm:@typescript/typescript6@6.0.2 untuk alat yang mengimpor API Compiler JavaScript warisan. Pemeriksaan tipe dan emisi SDK memakai kompiler native. API kompatibilitas bukan server bahasa bawaan.

Perkakas kerangka untuk Vue, Svelte, dan Astro memakai integrasi servernya sendiri; kompatibilitas pustaka TypeScript tidak menetapkan dukungan plugin kompiler. Transformasi JSX SolidJS berlanjut melalui Babel. Tes runtime dan artefak yang dihasilkan harus lulus secara independen dari pemeriksaan tipe yang berhasil.

Diagnostik dan memori

TypeScript native memakai diagnostik tarik. AX Code memintanya ketika pemanggil meminta menunggu diagnostik atau mengumpulkan inventaris diagnostik. Menyinkronkan berkas saja tidak menunggu pemeriksaan tipe. Suntingan membatalkan hasil cache yang bergantung; inventaris yang basi, tertunda, atau gagal dilaporkan sebagai sebagian atau terdegradasi oleh API diagnostik agregat. Tarikan yang berhasil menyegarkan berkas itu. Permintaan penyegaran server menandai hasil cache basi; permintaan diagnostik berikutnya menyegarkannya sesuai permintaan. Lalu lintas server latar tidak memperbarui masa hidup menganggur. Suntingan berkas masih dapat menyegarkan dokumen yang sebelumnya diminta di latar. API catatan mentah menyegarkan hasil basi dalam anggaran pengumpulan yang dibatasi dan menolak inventaris yang tidak lengkap; alat sunting mengungkapkan kondisi ini tanpa kehilangan suntingan berkas yang berhasil. Server bahasa lain mempertahankan perilaku diagnostik dorong yang ada.

Penantian diagnostik eksplisit yang tumpang tindih untuk berkas yang sama berbagi permintaan hanya dalam generasi workspace yang sama. Permintaan berurutan tetap menyegarkan; perubahan workspace mencegah pemakaian ulang permintaan yang sedang berjalan yang lebih lama. Penyegaran latar dan inventaris memeriksa ulang kesegaran setelah menunggu kunci dokumen.

Penghapusan dan pemindahan patch yang berhasil menutup dokumen sumber yang dihapus di layanan bahasa. Transaksi patch yang gagal mempertahankan keadaan dokumennya. Pembersihan punya tenggat bersama dua detik dan melewatkan jalur yang dibuat ulang oleh operasi kemudian dalam patch yang sama. Pembersihan yang tidak lengkap diungkapkan tanpa membatalkan suntingan tersimpan. Jika pengiriman ke server habis waktu, diagnostik tetap tidak lengkap sampai klien itu mulai ulang.

Server bahasa yang menganggur direklamasi setelah 30 menit pada profil memori normal, atau lima menit dengan AX_CODE_MEMORY_PROFILE=low. Reklamasi berjalan pada interval pemeriksaan kesehatan satu menit yang ada dan menunggu permintaan aktif serta antrean menetap. Server mulai ulang sesuai permintaan. AX_CODE_LSP_IDLE_MS menimpa durasi menganggur dalam milidetik; 0 menonaktifkan reklamasi menganggur. Nilai yang tidak valid memakai bawaan profil. Pengaturan ini tidak memberlakukan langit-langit RAM proses atau anggaran seluruh mesin. Pemanasan spekulatif tetap bersifat ikut serta.

Mereklamasi server membuang inventaris diagnostiknya. Hasil agregat tetap ditandai terdegradasi sampai dokumen yang sebelumnya terbuka dibuka kembali dan diperiksa, atau dihapus secara eksplisit. API inventaris mentah menolak cakupan yang tidak lengkap. Buku cakupan dibatasi 2,000 jalur; luapan tetap secara konservatif tidak lengkap sampai instans proyek dibuang. Mereklamasi server kosong tidak kehilangan cakupan. Alat sunting mempertahankan perubahan tersimpan dan mengungkapkan bahwa diagnostik tidak lengkap. Gunakan pemeriksaan tipe proyek penuh untuk menetapkan apakah proyek bersih.

Kompilasi native tidak menjamin pengurangan memori tetap tertentu. Bandingkan proyek, dokumen terbuka, permintaan, dan RSS pohon proses yang sama sebelum membuat klaim memori.

Penimpaan server yang eksplisit

Konfigurasi tepercaya lsp.typescript.command yang ada tetap menimpa server native bawaan. Untuk server warisan, pasang dan sematkan server serta SDK TypeScript yang kompatibel di proyek, lalu atur command ke berkas yang terpasang itu dengan --stdio. Hindari perintah npx yang tidak disematkan. Penimpaan bersifat eksplisit; AX Code tidak otomatis kembali ketika kompiler native tidak tersedia.

Hulu: pengumuman TypeScript 7.

Kompatibilitas dokumen tersimpan TypeScript 7.0.2

Server native 7.0.2 dapat mengembalikan cuplikan diagnostik yang lebih awal ketika lalu lintas pantauan berkas tumpang tindih dengan suntingan tersimpan. AX Code menutup dan membuka kembali dokumen yang berubah untuk versi server persis itu sebelum meminta diagnostik. Satu kueri dokumen yang dibatasi mengosongkan penutupan yang ditunda sebelum membuka kembali; kueri lain menunggu penggantian ini. Ini mengirim dokumen berubah secara penuh; dokumen yang tidak berubah tetap memakai ulang permintaan yang tumpang tindih. Versi server lain mempertahankan mode sinkronisasi yang dinegosiasikan. Penggantian yang terputus tetap tidak lengkap sampai server bahasa mulai ulang.