Microsoft a publié TypeScript 2.4, la dernière version de leur langage JavaScript. La version n'a pas beaucoup de nouvelles fonctionnalités, mais conserve la fraîcheur du langage et ajoute des capacités qui ont obstiné les développeurs.
La plus grande fonctionnalité que Microsoft présente cette fois-ci est le support pour de l’expression dynamic import()
. Cette fonctionnalité se trouve dans la phase 3 du processus TC39 (prévu pour ECMAScript 2018) et permet aux développeurs "d'importer conditionnellement et par impatience d'autres modules et bibliothèques pour rendre leur application plus efficace et plus consciente en termes de ressources". Auparavant, si un module voulait importer une bibliothèque, il fallait le faire en haut du fichier. Une mise en garde est que cela ne fonctionnera pas si on cible des modules es2015
. Pour utiliser cette fonctionnalité avec Webpack 2+ code-splitting (par exemple), les développeurs doivent cibler les modules esnext
.
En resserrant une partie de la vérification de type, cela a eu pour conséquence certains changements de rupture. Par exemple, la détection de weak type améliorée signifie que si votre code essaie d'attribuer des propriétés à un weak type sans correspondre à au moins une propriété, il échouera maintenant en 2.4.
En ce qui concerne la réaction de la communauté, les développeurs ont remercié l'inclusion d'Enums en string. Beaucoup ont montré les différents "hacks" qu'ils ont créés afin d'utiliser Enums en strings. L'une des méthodes les plus populaires était d'utiliser le type d'union :
type Sports = "Football" | "Baseball";
Avec les nouvelles énumérations en strings, l'exemple ci-dessus peut être exprimé plus naturellement :
enum Sports {
Football = "FOOTBALL",
Baseball = "BASEBALL"
}
Les utilisateurs de Visual Studio 2017 peuvent obtenir le dernier programme d'installation alors que d'autres éditeurs tels que Visual Studio Code obtiendront la mise à jour prochainement. Les développeurs peuvent en savoir plus via cette publication dans le blog de Microsoft.