Séance 1 : TypeScript pour Vue 3 & Nuxt 4
🎯 Objectifs
Comprendre les bases de TypeScript.
Ajouter du typage dans un projet Vue/Nuxt.
📖 Partie théorique
Pourquoi TypeScript ?
Superset de JavaScript avec typage statique.
Tout code JavaScript valide est aussi du TypeScript.
On peut progressivement ajouter du typage.
Pas besoin de tout réécrire.
Détection d’erreurs à la compilation.
Meilleure autocomplétion et documentation.
Adoption croissante dans l’écosystème JS.
Utilisé par des frameworks comme Angular, Vue, React.
Approche de TypeScript
TypeScript est un langage de programmation libre développé par Microsoft qui a pour but d'améliorer et de sécuriser la production de code JavaScript. Il s'agit d'un sur-ensemble syntaxique strict de JavaScript (c'est-à-dire que tout code JavaScript correct peut être utilisé avec TypeScript). Le code TypeScript est transcompilé en JavaScript et peut ainsi être interprété par n'importe quel navigateur web ou moteur JavaScript. (https://fr.wikipedia.org/wiki/TypeScript)
TypeScript permet un typage statique optionnel des variables et des fonctions, la création de classes et d'interfaces, l'import de modules, tout en conservant l'approche non-contraignante de JavaScript.
La documentation officielle est très complète : https://www.typescriptlang.org/
Types de base
Types primitifs
stringnumberbooleannullundefinedvoidany
Exemples :
Le typage ici, est utile pour expliquer au compilateur comment vérifier les valeurs dans chacune des variables
Types complexes
array:string[]ouArray<string>tuple:[string, number]enum: énumérationsobject:{ key: value }
Exemples :
Fonctions
Interfaces et types personnalisés
Utilisation
ou encore, pour un "ref" en VueJs
Attention au type any / unknown
contre :
Puis :
unknown est justement conçu comme l'alternative sûre à any : il oblige à vérifier ou raffiner la donnée avant son utilisation.
Le fichier de configuration tsconfig.json
TypeScript utilise un fichier tsconfig.json pour configurer le compilateur.
Exemple minimal :
Cas concrets avec VueJs/Nuxt
et arriver à :
Puis :
Et évidemment :
contre :
ainsi que :
Appel API typé
Avant :
Après :
Ajouter TypeScript à un projet Vue/Nuxt
Avec vuejs 3 et Nuxt 3 ou 4, TypeScript est nativement supporté. Il vous suffit de renommer les fichiers .js en .ts avec <script lang="ts"> pour les fichiers Vue.
Exemple dans un composant Vue :
Last updated