TypeScript 5.0 est maintenant disponible. Cette version apporte de nombreuses nouvelles fonctionnalités tout en visant à rendre TypeScript plus petit, plus simple et plus rapide. La version 5.0 implémente une nouvelle norme de décorateur, une meilleure prise en charge des projets ESM dans Node et les bundlers, de nouvelles façons pour les auteurs de bibliothèques de contrôler l'inférence générique, des fonctionnalités JSDoc étendues, une configuration simplifiée et de nombreuses autres améliorations.
Quoi de neuf depuis Beta et RC ?
Une nouvelle différence depuis TypeScript 5.0 Beta est que TypeScript permet aux décorateurs d'être placés avant export
ouexport default
après et . Ce changement reflète les discussions et le consensus au sein du TC39 (l'organisme de normalisation pour ECMAScript/JavaScript).
Une autre est que la nouvelle option de résolution de module ne peut être utilisée que lorsque l'option est définie sur Ceci est fait pour s'assurer que les instructions écrites dans le fichier d'entrée ne sont pas traduites en appels jusqu'à ce que le bundler les analyse , que le bundler ou le chargeur respecte les options de TypeScript . bundler
--module
esnext
import
require
module
Alors que TypeScript 5.0 Beta est livré avec "Prise en charge du tri d'importation insensible à la casse dans les scénarios d'éditeur", cela n'a pas été détaillé dans l'annonce de mise à jour de la version, car l'UX pour la personnalisation est toujours en discussion.
Le changement le plus notable depuis le RC est que TypeScript 5.0 package.json
spécifie désormais 12.20
la version minimale de Node.js dans . Le responsable a également publié un article sur la migration de TypeScript 5.0 vers les modules .
Les nombres spécifiques pour les repères de vitesse et les incréments de taille de paquet ont également été modifiés depuis les versions bêta et RC de TypeScript 5.0 , bien que le bruit ait toujours été un facteur dans la course. Les noms de certains benchmarks ont également été ajustés pour plus de clarté, et l'amélioration de la taille du package a été déplacée vers un graphique séparé.
Fonctionnalités principales de TypeScript 5.0
- décorateur
const
paramètre de typeextends
Prise en charge de plusieurs fichiers de configurationenums
Le type est devenu Unionenums
--moduleResolution bundler
- Indicateurs de personnalisation de la résolution
--verbatimModuleSyntax
- soutien
export type *
- Prise en charge de JSDoc
@satisfies
- Prise en charge de JSDoc
@overload
- Prise en charge du passage des drapeaux spécifiques à l'émission
--build
- Tri des importations insensible à la casse dans l'éditeur
- parfait
switch
/case
- Optimisations de la vitesse, de la mémoire et de la taille du package
- Changements de rupture et dépréciations
Pour plus de détails, veuillez vous référer à l'annonce de sortie .