Vue.js
Applications web complexes et réactives
Brice Chaponneau
Eyrolles
Introduction1
Historique de Vue.js
1
Comparatif des frameworks JavaScript actuels
1
Rappels de modélisation en génie logiciel
5
Architecture MVC5
Architecture MVVM5
Front-end et back-end6
Chapitre 1
Installer et utiliser Vue.js7
Une version par environnement
7
Sources du framework
8
Autonome - Source officielle8
CDN - Serveur de distribution8
Nuxt - Le framework universel8
Vue CLI - Le générateur de projet officiel8
CodeSandbox - Une solution clé en main9
Bower - Un gestionnaire de dépendances9
NPM (ou Yarn) - Le gestionnaire de référence9
Chapitre 2
Les outils préconisés et leur configuration13
VS Code Debugger for Chrome
13
Description13
Configuration13
Déboguer pas à pas15
Vue.js devtools
16
Description16
Installation17
Vue Performance Devtool
17
Description17
Vetur
18
Description18
Chapitre 3
Les paradigmes fondamentaux de Vue.js19
Instance de Vue.js
19
Au coeur du système réactif19
Organisation et optimisation de la structure de page HTML21
Cycle de vie d'une instance de Vue.js
22
Hooks du cycle de vie23
Le contexte ou la portée23
Hello World - Première instance
24
Qu'est-ce qu'un composant et comment l'intégrer ?
25
Structure d'un composant25
Intégration d'un composant dans l'environnement applicatif25
Les propriétés d'instance
26
Référencier les éléments avec (...)refs26
Interpolation pour générer du rendu
29
Texte ou mustache30
Utilisation des premières directives31
Chapitre 4
Les directives pour commander les éléments35
Associer les directives et les arguments
36
Des modificateurs pour enrichir les directives
37
Les directives natives en détail
37
Les directives d'interpolation37
Les directives de rendu conditionnel39
Les directives de rendu de liste41
Les directives de gestion d'événements48
Les directives de liaison53
Chapitre 5
Les directives personnalisées65
Enregistrement et utilisation
65
Exemple : directive de déplacement
67
Chapitre 6
Formater avec l'interpolation des filtres71
Qu'est-ce qu'un filtre ?
71
Écriture de filtres
71
Chapitre 7
Les composants75
Définition
75
Premier composant
76
Les options structurantes
78
Data : les variables réactives78
Props : les propriétés de communication79
Methods : les fonctions de traitement83
Computed : le calcul avec mise en cache85
Différences entre les options methods et computed87
Watch : personnaliser l'observation des changements87
V-model personnalisé90
Création locale
93
Création globale
94
Création mono-fichier
94
Écriture alternative96
Optimisation avec l'architecture modulaire97
Optimisation avec le lazy loading99
Préconisation pour écrire rapidement un composant100
Communiquer avec les composants
101
Communication parent vers enfant103
Communication enfant vers parent103
Communication entre composants105
Communication avec un composant récursif107
Gestion de composants dynamiques111
Supprimer l'héritage d'attribut114
Chapitre 8
Les slots, un emplacement réservé pour injecter du contenu117
Définition
117
Utilisation standard d'un slot
118
Utilisation de slots nommés
121
Slot avec portée
123
Slot avec passage de propriété
124
Des slots dynamiques
125
Comment et pourquoi tester l'existence d'un slot ?
126
Chapitre 9
Le composant keep-alive pour garder l'état courant131
Utilisation du système de cache
131
Chapitre 10
Apporter de la dynamique visuelle avec les transitions135
Qu'est-ce que le composant transition ?
135
Mémento des classes et des événements pour les transitions
137
Exemple de transition
137
Des transitions réutilisables et génériques
140
Chapitre 11
La réutilisabilité avec les mixins147
Qu'est-ce qu'un mixin ?
147
Attentions à porter lors de l'utilisation des mixins148
Chapitre 12
Ajouter des fonctionnalités avec les plug-ins153
Comment créer un plug-in ?
154
Plug-in d'intégration
155
Installation automatique155
Comment utiliser un plug-in ?
156
Chapitre 13
Extension de composant159
La méthode
159
L'injection de dépendances
163
Principe163
Chapitre 14
Le store, gestionnaire d'états167
Définition
167
Le gestionnaire Vuex
170
Qu'est-ce que Vueux ?170
Vue devtools comme compagnon171
Comment installer Vuex ?171
Création de la structure de base172
Créer un store avec Vuex173
Chapitre 15
API201
Principe de base de communication avec une API
201
Comment communiquer avec une API ?
201
Bibliothèque Fetch201
Bibliothèque Axios203
Consommation d'une API206
Chapitre 16
Le routage pour la navigation217
Pourquoi utiliser un plug-in de routage ?
217
Comment installer le router ?
218
Comment définir une route ?
218
Préconisation pour la gestion du routage219
Un composant pour page222
La concordance dynamique, mettre des variables dans nos routes225
La vue, naviguer sur une page avec de multiples composants229
Naviguer par le code, sans action de l'utilisateur231
Intercepter une route de navigation232
De la métadonnée dans les routes234
De l'animation dans la navigation234
Conclusion239
Index241