TypeScript 3.8 menambah import dan eksport jenis sahaja

TypeScript 3.8, versi baru dari superset JavaScript yang diketik Microsoft, kini tersedia sebagai rilis produksi. Peningkatan TypeScript terbaru menekankan import dan eksport jenis sahaja dan pematuhan standard ECMAScript.

Siaran ini menambah sintaks baru untuk import dan eksport jenis-jenis sahaja, dengan tujuan untuk memberi pengguna kawalan yang lebih baik terhadap import dan pengeluaran. The import typesintaks hanya import akuan yang akan digunakan untuk anotasi jenis dan perisytiharan dan sentiasa dipadamkan sepenuhnya. The  export type sintaks hanya menyediakan eksport yang digunakan untuk jenis konteks dan dipadamkan daripada naskah yg dicetak output.

TypeScript telah menggunakan sintaks import JavaScript untuk mengaktifkan jenis rujukan. Walaupun senang, kemampuan itu hanya berfungsi kerana ciri import elision, yang menghilangkan jenis TypeScript ketika TypeScript mengeluarkan fail JavaScript. Walau bagaimanapun, elisi import tidak mencukupi dan bermasalah.

Sempena  import type, naskah yg dicetak 3.8 juga menambah bendera pengkompil untuk mengawal apa yang berlaku dengan import yang tidak akan digunakan pada masa berjalan:  importsNotUsedAsValues.

Mengenai standard ECMAScript untuk JavaScript, TypeScript 3.8 menambahkan sokongan untuk bidang peribadi ECMAScript, yang merupakan bagian dari cadangan deklarasi bidang kelas untuk JavaScript. Bidang awam dan swasta akan disatukan menjadi keseluruhan, ortogonal keseluruhan, menurut cadangan ini.

Penambahbaikan lain yang dijanjikan dalam TypeScript 3.8 termasuk:

  • "Fast dan longgar" tambahan jenis semakan, yang mempunyai pilihan pengkompil, assumeChangesOnlyAffectDirectDependencies. Pilihan ini dapat mengurangkan waktu build dalam file tertentu, karena TypeScript akan memeriksa kembali / membangun kembali hanya file yang telah berubah serta file yang langsung mengimpornya. Dianjurkan untuk pangkalan kod yang besar di mana pembangun bersedia menangguhkan kesilapan projek sepenuhnya sehingga kemudian.
  • Pelaksanaan eksport sebagai * nssintaks, menyediakan titik masuk tunggal untuk mendedahkan semua anggota modul lain sebagai anggota tunggal.
  • Tingkat atas await, ciri ECMAScript yang akan datang untuk menghilangkan sekatan penggunaan awaitekspresi di bahagian atas fail dalam keadaan tertentu.
  • Fail JavaScript disokong dalam TypeScript 3.8 dengan mengaktifkan allowJsbendera; pemeriksaan jenis fail tersebut disokong melalui checkjspilihan atau dengan menambahkan komen // @ ts-check ke bahagian atas fail .js. Tag JSDoc baru dimanfaatkan untuk sifat, kerana fail JavaScript kekurangan sintaks khusus untuk pemeriksaan jenis.
  • A watchOptionsmedan dalam tsconfig.jsondan jsconfig.jsonmembolehkan pengguna memberitahu perkhidmatan penyusun / bahasa yang fail menonton strategi untuk digunakan untuk mengesan fail dan direktori.
  • Refactoring untuk menukar gabungan rangkaian.
  • Pemeriksaan kebolehlaksanaan yang lebih ketat kepada kesatuan pekerja dengan tandatangan indeks, perubahan yang besar.
  • Dalam perubahan yang lain, objectJSDoc tidak lagi berada anydi bawah noImplicitAny.

Anda boleh memasang pelepasan umum TypeScript 3.8 melalui NuGet atau melalui NPM:

npm install typescript