Programmering

TypeScript 3.8 tilføjer kun import og eksport af typen

TypeScript 3.8, en ny version af Microsofts typiske supersæt af JavaScript, er nu tilgængelig som en produktionsudgivelse. Den seneste TypeScript-opgradering understreger kun import og eksport af type og overholdelse af ECMAScript-standarder.

Udgivelsen tilføjer en ny syntaks for type-only import og eksport med det formål at give brugerne mere finkornet kontrol over import og elision. Det importtype syntaks importerer kun erklæringer, der skal bruges til typeannoteringer og erklæringer, og bliver altid fuldstændigt slettet. Deteksporttype syntaks giver kun en eksport, der skal bruges til typekontekster, og slettes fra TypeScript-output.

TypeScript har brugt JavaScript's import-syntaks til at aktivere referencetyper. Selvom det var praktisk, fungerede kapaciteten kun på grund af importelision-funktionen, der udelader TypeScript-import, når TypeScript udsender JavaScript-filer. Imidlertid har importelision været både utilstrækkelig og problematisk.

I forbindelse medimporttype, TypeScript 3.8 tilføjer også et compiler-flag for at kontrollere, hvad der sker med import, der ikke bruges ved kørsel:importNotUsedAsValues.

Hvad angår ECMAScript-standarden for JavaScript, tilføjer TypeScript 3.8 understøttelse af private ECMAScript-felter, som er en del af et klassefeltdeklarationsforslag til JavaScript. I henhold til dette forslag vil offentlige og private felter blive integreret i en enkelt, ortogonal helhed.

Andre forbedringer, der er lovet i TypeScript 3.8, inkluderer:

  • "Hurtig og løs" trinvis typekontrol med en kompilatormulighed, antageChangesOnlyAffectDirectDependencies. Denne mulighed kan reducere byggetider i bestemte filer, da TypeScript kun kontrollerer / genopbygger kun filer, der er ændret, samt filer, der importerer dem direkte. Det anbefales til store kodebaser, hvor udviklere er villige til at udskyde fuld projektfejl til et senere tidspunkt.
  • Implementering af eksporten som * ns syntaks, der giver et enkelt indgangspunkt for at eksponere alle medlemmer af et andet modul som et enkelt medlem.
  • Højeste niveau vente, en kommende ECMAScript-funktion til at fjerne begrænsninger for brugen af ​​en vente udtryk øverst i en fil under specifikke forhold.
  • JavaScript-filer understøttes i TypeScript 3.8 ved at aktivere tillad Js flag; typekontrol af disse filer understøttes via checkjs valgmulighed eller ved at tilføje en // @ ts-check-kommentar til toppen af ​​.js-filer. Nye JSDoc-tags udnyttes til egenskaber, fordi JavaScript-filer mangler en dedikeret syntaks til typekontrol.
  • EN watchOptions felt i tsconfig.json og jsconfig.json lader brugerne fortælle kompilatoren / sprogtjenesten, hvilke filovervågningsstrategier de skal bruge til at holde styr på filer og mapper.
  • En refactoring til konvertering af strengkombinationer.
  • Strengere kontrol af tildelbarhed til fagforeninger med indeksunderskrifter, en brudende ændring.
  • I en anden forandring, objekt i JSDoc er ikke længere nogen under noImplicitAny.

Du kan installere den generelle version af TypeScript 3.8 via NuGet eller via NPM:

npm installer typeskrift