En raison d’une maintenance technique, la boutique Editions ENI sera inaccessible ce mercredi soir à compter de 21h, jusqu’à 2h jeudi matin. Nous vous invitons à passer votre commande avant 20h30. Merci pour votre compréhension. L’équipe des Editions ENI
  1. Supports de cours
  2. Vue.js - Développez des applications web modernes en JavaScript avec un framework progressif

Vue.js Développez des applications web modernes en JavaScript avec un framework progressif

  • En stock
  • Expédié en 24h00
  • Personnalisable
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7

Présentation

Alliant théorie et pratique avec ses nombreux exemples, ce support sur Vue.js, framework JavaScript facile à prendre en main, s’adresse à tout développeur Front End désireux de développer des applications web fluides, dynamiques et réactives. Bien que des connaissances sur les langages HTML, CSS et JavaScript soient un plus pour appréhender la lecture de ce livre, un chapitre dédié à JavaScript permettra au lecteur d’être à jour des nouvelles syntaxes apparues ces dernières années.

Après une introduction sur le concept de DOM virtuel et d’architecture MVVM dont Vue.js s’inspire, le lecteur passe rapidement à la pratique avec l’installation et la configuration des outils d’aide au développement. Il apprend à utiliser Vue.js sur un nouveau projet ou sur un projet existant et devient ainsi en mesure de manipuler le DOM d’une page web, de mettre en place les comportements attendus suite aux actions de l’utilisateur ou encore de gérer des styles CSS à l’aide des directives introduites par le framework. Un chapitre est également dédié à la création de formulaires dynamiques.

Dans la suite du support, l’auteur détaille la manière d’organiser son code en composants et d’architecturer une application en fonction de sa taille, en ayant notamment recours à la mutualisation du code. Le lecteur apprend également à utiliser l’empaqueteur de modules Webpack pour compiler et déployer une application en production.

Ayant pris soin de rappeler les concepts de sécurité liés aux applications web (CORS, cookies, jetons JWT, attaques CSRF et XSS, protocole OAuth 2.0), l’auteur explique ensuite comment consommer des API dans une application de manière sécurisée, d’abord sous la forme d’une API REST puis sous la forme d’une API GraphQL.

Pour finir, le lecteur appréhende le routage avec Vue Router pour simuler les URLs de l’application dans un navigateur, ainsi que la centralisation de la gestion des données avec le plug-in Vuex.

Table des matières

  • Introduction
    • 1. Quelles notions ce livre couvre-t-il ?
    • 2. Prérequis
    • 3. Historique de Vue.js
      • 3.1 Pourquoi Vue.js ?
        • 3.1.1 Ses origines
        • 3.1.2 Ses atouts
      • 3.2 Qu'est-ce que le Virtual DOM ?
        • 3.2.1 Définition
        • 3.2.2 API DOM pour mettre à jour une page web
        • 3.2.3 Limites de l'API DOM
        • 3.2.4 Apparition du concept de DOM virtuel
        • 3.2.5 Manipulation du DOM virtuel
      • 3.3 Le DOM virtuel avec Vue.js
    • 4. Modèles d'architectures
      • 4.1 MVC (Modèle - Vue - Contrôleur)
        • 4.1.1 MVC pour toutes applications
        • 4.1.2 MVC adapté aux applications web
      • 4.2 MVVM (Model - View - ViewModel)
    • 5. Comparatifs avec les autres frameworks
      • 5.1 Popularité entre Vue, React et Angular
      • 5.2 Avantages et inconvénients
        • 5.2.1 Angular
        • 5.2.2 React.js
        • 5.2.3 Vue.js
        • 5.2.4 Quel framework pour quel besoin ?
        • 5.2.5 Aller plus loin dans la comparaison avec les autres frameworks
    • 6. Futur de Vue.js
  • Notions essentielles de JavaScript
    • 1. Introduction
    • 2. Bases algorithmiques
      • 2.1 Variables et types de valeurs
        • 2.1.1 Déclaration d'une variable
        • 2.1.2 Types de valeurs
        • 2.1.3 Contextes d'exécution global et local
        • 2.1.4 Portée de variable
        • 2.1.5 Conversion de types de données
        • 2.1.6 Affectation par décomposition
      • 2.2 Structures de contrôle
        • 2.2.1 Instructions conditionnelles
        • 2.2.2 Boucles
    • 3. Fonctions
      • 3.1 Définition et utilisation des fonctions
      • 3.2 Fermetures (closures)
      • 3.3 Fonction en argument d'autres fonctions
      • 3.4 Paramètres par défaut et paramètres du reste
      • 3.5 Fonctions fléchées
      • 3.6 Fonctions anonymes autoexécutantes
    • 4. Manipulation de tableaux
      • 4.1 Déclarer, lire, modifier, supprimer des éléments
      • 4.2 Itérer sur un tableau
      • 4.3 Décomposer avec l'opérateur spread
      • 4.4 Filtrer un tableau
      • 4.5 Trier un tableau
    • 5. Manipulation d’objets
      • 5.1 Définir un objet et son prototype
      • 5.2 Instancier un objet
      • 5.3 Lire, ajouter, modifier ou supprimer une propriété
      • 5.4 Copier ou fusionner des objets
      • 5.5 Itérer sur un objet
      • 5.6 Chaîner les méthodes d'objet
    • 6. Utilisation du mot-clé this
      • 6.1 En dehors d'une fonction
      • 6.2 Dans une fonction appelée de manière classique
      • 6.3 Dans une fonction appelée via call() et apply()
      • 6.4 Avec bind() pour associer un objet à this
      • 6.5 Dans une fonction appelée en tant que méthode d'objet
      • 6.6 Dans un gestionnaire d'évènement
      • 6.7 Dans une fonction fléchée
    • 7. Gestion des exceptions
      • 7.1 L’utilité
      • 7.2 La structure try...catch...finally
      • 7.3 L'objet Error et les erreurs personnalisées
    • 8. Utilisation des promesses
      • 8.1 Objet natif Promise
      • 8.2 Méthode then()
      • 8.3 Gestionnaires de then()
      • 8.4 Méthode catch()
      • 8.5 Chaînage de traitements asynchrones avec les promesses
      • 8.6 Création de promesses déjà tenues ou rompues
      • 8.7 Exécution de tâches asynchrones en parallèle
      • 8.8 Gestion de la pile d'appels
      • 8.9 Fonctions asynchrones avec async
    • 9. Utilisation des modules JavaScript
      • 9.1 L'historique des modules JavaScript
        • 9.1.1 Introduction
        • 9.1.2 Application sans module
        • 9.1.3 Objets en tant que modules et fonctions auto-invoquées
        • 9.1.4 Modules CommonJS
        • 9.1.5 Modules AMD
        • 9.1.6 Chargeur de modules
        • 9.1.7 Empaqueteur de modules
      • 9.2 Les modules ES 6
        • 9.2.1 Introduction
        • 9.2.2 Déclarer et utiliser un module
        • 9.2.3 Éviter les conflits de nommage
        • 9.2.4 Agréger plusieurs modules
        • 9.2.5 Importer dynamiquement
  • Comprendre les fondamentaux de Vue.js
    • 1. Installation
      • 1.1 Une version par environnement
      • 1.2 Via téléchargement manuel
      • 1.3 Via l'inclusion d'un CDN (le plus simple)
      • 1.4 Via npm ou yarn pour de plus gros projets
        • 1.4.1 Téléchargement du package vue
        • 1.4.2 Explication des différents builds
      • 1.5 Via Vue-CLI
    • 2. Outils de développements
      • 2.1 VS Code et ses plugins
        • 2.1.1 Installer et configurer VS Code
        • 2.1.2 Déboguer avec VS Code
      • 2.2 Vue Devtools
      • 2.3 Vue Performance Devtool
      • 2.4 CodeSandbox
      • 2.5 Git
    • 3. Instance Vue.js
      • 3.1 Hello World
      • 3.2 Liaison de données entre View et ViewModel
      • 3.3 Cycle de vie d'une instance
      • 3.4 Utilisation du mot-clé this
    • 4. Virtual DOM et réactivité
      • 4.1 Le système de liaison de données
      • 4.2 Le fonctionnement de la file d'attente de mise à jour asynchrone
      • 4.3 La déclaration de propriétés réactives
      • 4.4 Les limitations de la détection de changement
      • 4.5 Les directives pour manipuler le DOM
        • 4.5.1 Un attribut HTML spécial
        • 4.5.2 Les arguments et les arguments dynamiques
        • 4.5.3 Les modificateurs
    • 5. Liaison de données
      • 5.1 Liaison réactive uni-directionnelle
        • 5.1.1 Afficher des données réactives avec l'interpolation texte
        • 5.1.2 Rendre un attribut réactif avec v-bind
      • 5.2 Liaison bidirectionnelle avec v-model
    • 6. Affichage des données dans la View
      • 6.1 L'interpolation avec des données plus complexes
      • 6.2 La directive v-html
      • 6.3 La directive v-once
      • 6.4 Le rendu conditionnel
        • 6.4.1 La directive v-show
        • 6.4.2 Les directives v-if, v-else-if et v-else
      • 6.5 La balise <template>
    • 7. Traitement et formatage des données
      • 7.1 Valeurs traitées avec les propriétés calculées
      • 7.2 Valeurs traitées avec les méthodes
      • 7.3 Propriétés calculées vs méthodes
      • 7.4 Mutateurs calculés
      • 7.5 Valeurs traitées avec les observateurs watch
      • 7.6 Utilisation des filtres pour formater les données
    • 8. Affichage de listes de données
      • 8.1 Utiliser la directive v-for
      • 8.2 Filtrer les éléments d'une liste
        • 8.2.1 Ne pas utiliser v-if avec v-for
        • 8.2.2 En utilisant une propriété calculée
      • 8.3 Trier les éléments d'une liste
      • 8.4 Muter un tableau ou un objet
    • 9. Capture des évènements déclenchés par l'utilisateur
      • 9.1 Directive v-on
        • 9.1.1 Mettre à jour une donnée suite à un évènement du DOM
        • 9.1.2 Récupérer l'évènement dans la méthode
      • 9.2 Modificateurs d'évènements
      • 9.3 Évènement dynamique et syntaxe objet
    • 10. Gestion des styles CSS
      • 10.1 Scoped styles
      • 10.2 Les styles dynamiques
      • 10.3 Les styles dynamiques avec un objet
      • 10.4 Les styles dynamiques avec un objet sans CSS
  • Utiliser les formulaires
    • 1. Les éléments de formulaire
      • 1.1 L’utilisation de librairies tierces
      • 1.2 Les champs text et textarea
      • 1.3 Les cases à cocher et les boutons radio
      • 1.4 Les listes déroulantes
    • 2. Les champs particuliers de formulaire
      • 2.1 Champs date
      • 2.2 Champs de chargement de fichier
      • 2.3 Sliders
    • 3. Les modificateurs de la directive v-model
      • 3.1 Formater une saisie en tant que nombre
      • 3.2 Réagir sur l'évènement change plutôt qu'input
      • 3.3 Retirer les espaces
    • 4. La validation du formulaire
      • 4.1 Les librairies de validations de formulaire
      • 4.2 Utiliser VeeValidate
        • 4.2.1 Installer
        • 4.2.2 Utiliser les règles de validation par défaut
        • 4.2.3 Ajouter ses propres règles de validation
        • 4.2.4 Gérer la soumission du formulaire
      • 4.3 Utiliser Vuelidate
        • 4.3.1 Installer
        • 4.3.2 Utiliser les règles de validation par défaut
        • 4.3.3 Ajouter ses propres règles de validation
        • 4.3.4 Gérer la soumission de formulaire
  • Utiliser les composants
    • 1. Qu'est-ce qu'un composant ?
      • 1.1 Définition
      • 1.2 Structure d'un composant
      • 1.3 Structuration d'une application en composants
    • 2. Création d'un composant
      • 2.1 Manière globale
      • 2.2 Manière locale
    • 3. Communication entre composants
      • 3.1 Parent - enfant
        • 3.1.1 Définition des props dans la Vue
        • 3.1.2 Types de données
        • 3.1.3 Définition des props dans le ViewModel
        • 3.1.4 Validation des props
        • 3.1.5 Utilisation des props dans le ViewModel
      • 3.2 Enfant - parent
        • 3.2.1 Émettre un évènement depuis un composant enfant
        • 3.2.2 Écouter un évènement dans le composant parent
      • 3.3 Enfant - Enfant
        • 3.3.1 Limite de l'utilisation des props et des évènements personnalisés
        • 3.3.2 Utilisation d'un bus d'évènements
    • 4. Pour aller plus loin
      • 4.1 Les différentes propriétés d'instance d'un composant
      • 4.2 L’utilisation de la directive v-model sur un composant
        • 4.2.1 V-model pour un composant contenant un champ texte
        • 4.2.2 V-model pour un composant contenant une case à cocher ou un bouton radio
      • 4.3 L'héritage des attributs du composant
      • 4.4 Les évènements natifs à relier au composant
      • 4.5 La liaison bidirectionnelle d'une prop avec le modificateur .sync
    • 5. Plusieurs types de composants
      • 5.1 Les composants dynamiques
        • 5.1.1 L'élément <component> et l'attribut is
        • 5.1.2 L'élément <keep-alive>
      • 5.2 Les composants monofichiers
      • 5.3 Les composants basiques
      • 5.4 Les composants asynchrones pour améliorer les performances
      • 5.5 L’utilisation de la fonction render() pour le rendu
      • 5.6 Les composants fonctionnels
  • Mutualiser des fonctionnalités
    • 1. Utiliser les slots pour injecter du contenu
      • 1.1 Définition
      • 1.2 Slots nommés
      • 1.3 Props de slot
    • 2. Utiliser les composants sans rendu
      • 2.1 Définition
      • 2.2 Création d'un composant de captures d'erreurs
    • 3. Utiliser les mixins
      • 3.1 Définition
      • 3.2 Stratégies de fusion des options
    • 4. Utiliser les plugins
      • 4.1 Définition
      • 4.2 Optimisation des performances
        • 4.2.1 Vérifier la taille des plugins et leur vitesse de chargement
        • 4.2.2 Utiliser le tree-shaking pour les plugins qui le permettent
    • 5. Les directives personnalisées
      • 5.1 Définition
      • 5.2 Arguments et modificateurs
  • Créer et déployer une application avec Vue CLI
    • 1. Plusieurs types d'applications
      • 1.1 Une SPA classique
        • 1.1.1 Définition
        • 1.1.2 Contraintes d'une SPA classique
      • 1.2 Une application universelle (SPA + SSR)
        • 1.2.1 Définition
        • 1.2.2 Contraintes d'une application universelle
      • 1.3 Un générateur de site statique
        • 1.3.1 Définition
        • 1.3.2 Architecture JAMstack
        • 1.3.3 Contraintes des sites statiques
      • 1.4 Une PWA
        • 1.4.1 Définition
        • 1.4.2 Différents types de caches
        • 1.4.3 Contraintes d'une PWA
      • 1.5 Quel type d'application pour quel besoin ?
    • 2. Création d’un projet avec Vue CLI
      • 2.1 Présentation
      • 2.2 Installation
        • 2.2.1 Prérequis
        • 2.2.2 Prototypage rapide d’une application
        • 2.2.3 Création d’une application Vue.js complète
      • 2.3 Comprendre l'arborescence du projet
        • 2.3.1 Racine du projet
        • 2.3.2 Dossier src
        • 2.3.3 Modification de l'arborescence pour un projet de taille moyenne
        • 2.3.4 Modification de l'arborescence pour un gros projet
    • 3. Fonctionnalités de Vue CLI
      • 3.1 Les plugins et les presets
        • 3.1.1 Les plugins
        • 3.1.2 Les presets
      • 3.2 Le rechargement à chaud
      • 3.3 La configuration de Webpack
        • 3.3.1 Comprendre le fonctionnement
        • 3.3.2 Accéder aux fichiers de configurations des différents modes
        • 3.3.3 Modifier la configuration
        • 3.3.4 Utiliser l'API de chaînage pour modifier plus finement la configuration
      • 3.4 Les modes et variables d'environnement
        • 3.4.1 Les modes pour chaque environnement
        • 3.4.2 Les variables d'environnement
      • 3.5 Le dossier public
        • 3.5.1 Interpolation dans les fichiers HTML
        • 3.5.2 Fichiers statiques
      • 3.6 La compatibilité des navigateurs
        • 3.6.1 La liste des navigateurs compatibles
        • 3.6.2 Le mode moderne
        • 3.6.3 Les contrôles CORS en mode moderne pour les modules ES6
    • 4. Déploiement de votre application en production
      • 4.1 Procédure de déploiement
        • 4.1.1 Compiler votre application avec Webpack
        • 4.1.2 Prévisualiser en local
        • 4.1.3 Déployer votre application sur un serveur
      • 4.2 Déploiement simple avec des plateformes PaaS
        • 4.2.1 Déployer sur Netlify
        • 4.2.2 Déployer sur Heroku
        • 4.2.3 Créer une image Docker avec Nginx
  • Consommer des API REST et GraphQL
    • 1. Plusieurs types d'API (REST et GraphQL)
      • 1.1 Définition et historique
      • 1.2 API REST
        • 1.2.1 Définition
        • 1.2.2 Contraintes d'une API REST
      • 1.3 API GraphQL
        • 1.3.1 Définition
        • 1.3.2 Description du fonctionnement
    • 2. Sécurité et modes d'authentification
      • 2.1 Principes à adopter
      • 2.2 Cookie d'authentification
        • 2.2.1 Cookie de session
        • 2.2.2 Attaques CSRF (Cross Site Request Forgery)
        • 2.2.3 Attaques XSS (Cross Site Scripting)
      • 2.3 Authentification basique (Basic)
      • 2.4 Authentification avec jeton porteur (Bearer)
      • 2.5 Authentification avec jeton signé (Bearer + JWT)
        • 2.5.1 Signature
        • 2.5.2 Principe clé privée - clé publique
        • 2.5.3 Composition d'un jeton JWT
      • 2.6 Authentification avec une clé API
        • 2.6.1 Authentification de l'application par le fournisseur d'API
        • 2.6.2 Problématique de sécurité sur le réseau de l'utilisateur
        • 2.6.3 Où conserver les clés API ?
      • 2.7 Authentification avec OAuth 2.0
        • 2.7.1 Un serveur d'authentification
        • 2.7.2 La problématique de conservation du jeton
    • 3. Créer une API rapidement avec Strapi
      • 3.1 Créer le backend de votre API
        • 3.1.1 Présentation
        • 3.1.2 Installation
      • 3.2 Créer le schéma de base de données
        • 3.2.1 Présentation du tableau de bord
        • 3.2.2 Créer le schéma de base de données
        • 3.2.3 Gérer les rôles et les permissions
      • 3.3 Tester l'API REST
        • 3.3.1 Tester les requêtes GET, POST, PUT et DELETE
        • 3.3.2 Utiliser des paramètres pour filtrer une collection
      • 3.4 Tester l'API GraphQL
        • 3.4.1 Utiliser Postman ou l'éditeur GraphQL de Strapi
        • 3.4.2 Récupérer des données
        • 3.4.3 Créer un enregistrement
        • 3.4.4 Modifier un enregistrement
        • 3.4.5 Supprimer un enregistrement
        • 3.4.6 Utiliser des filtres
        • 3.4.7 Fonctions d'agrégation et clause groupBy
    • 4. Fetch et Axios pour consommer des API REST
      • 4.1 Fetch
        • 4.1.1 Définition et usage
        • 4.1.2 Les objets Request et Response
        • 4.1.3 Gérer les erreurs
        • 4.1.4 Interrompre une requête
        • 4.1.5 Limiter les appels trop fréquents avec debounce et throttle
        • 4.1.6 Exécuter des requêtes en parallèle
      • 4.2 Création d'un catalogue de produits
        • 4.2.1 Afficher la liste des produits avec fetch
        • 4.2.2 Gérer les erreurs avec un composant sans rendu
        • 4.2.3 Mutualiser la fonctionnalité d'appel API
        • 4.2.4 Mettre en place une pagination
        • 4.2.5 Ajouter un menu déroulant pour filtrer la liste par catégorie
        • 4.2.6 Utiliser une barre de recherche
      • 4.3 Axios
        • 4.3.1 Définition et usage
        • 4.3.2 L'objet config et l'objet response
        • 4.3.3 Gérer les erreurs
        • 4.3.4 Interrompre une requête
        • 4.3.5 Utiliser les intercepteurs
        • 4.3.6 Centraliser la configuration axios dans l'application
    • 5. Apollo pour consommer des API GraphQL
      • 5.1 Installation
        • 5.1.1 Installation avec Vue CLI
        • 5.1.2 Installation manuelle pour consommer une API Strapi
        • 5.1.3 Installation du plugin VS Code
      • 5.2 Récupérer des données
        • 5.2.1 Les requêtes intelligentes
        • 5.2.2 Utiliser des paramètres dans la requête
        • 5.2.3 Requête conditionnelle
        • 5.2.4 Modifier les données reçues
        • 5.2.5 Intercepter les erreurs
        • 5.2.6 Les options supplémentaires
      • 5.3 Placer le code des requêtes dans des fichiers .gql
        • 5.3.1 Créer un fichier .gql
        • 5.3.2 Importer un fichier .gql
        • 5.3.3 Utiliser les fragments
      • 5.4 Créer, modifier ou supprimer une ressource
        • 5.4.1 La méthode this.$apollo.mutate
        • 5.4.2 Le composant ApolloMutation
      • 5.5 Mise à jour du catalogue de produits avec Apollo
        • 5.5.1 Nettoyer l'ancienne logique métier de l'API REST
        • 5.5.2 Définir les requêtes GraphQL
        • 5.5.3 Définition des requêtes intelligentes
  • Utiliser Vue Router pour la navigation
    • 1. Définition et installation
      • 1.1 Définition
      • 1.2 Installation
        • 1.2.1 Télécharger le plugin ou utiliser un CDN
        • 1.2.2 Utiliser npm
        • 1.2.3 Utiliser Vue CLI
      • 1.3 Déclaration du routeur
    • 2. Usage
      • 2.1 Définition d'une route
      • 2.2 Résolution d'une route
      • 2.3 Mode historique
      • 2.4 Affichage des composants dans des vues routeur
        • 2.4.1 La vue par défaut
        • 2.4.2 Les vues nommées
      • 2.5 Naviguer à l'aide des liens <router-link>
        • 2.5.1 Fonctionnement
        • 2.5.2 La classe active
        • 2.5.3 Les props de <router-link>
        • 2.5.4 Les routes nommées
      • 2.6 Routes dynamiques
        • 2.6.1 Utilisation des segments dynamiques
        • 2.6.2 Récupérer les segments dynamiques avec $route
        • 2.6.3 Utiliser les segments dynamiques pour passer des valeurs aux props d'un composant
        • 2.6.4 Passage entre deux chemins liés à la même route
      • 2.7 Les routes imbriquées
    • 3. Navigation programmée
      • 3.1 Navigation programmée avec $router
        • 3.1.1 $router.push() et $router.replace()
        • 3.1.2 $router.forward(), $router.back(), $router.go()
      • 3.2 Les intercepteurs de navigation
        • 3.2.1 Des intercepteurs globaux, par route ou par composant
        • 3.2.2 Flux de résolution lors d'un passage d'une route à l'autre
        • 3.2.3 Déclaration d'un intercepteur
        • 3.2.4 Exemple d'utilisation d'un intercepteur global
        • 3.2.5 Exemple de chargement de données avant la navigation
      • 3.3 Les redirections
    • 4. Pour aller plus loin
      • 4.1 Les transitions
        • 4.1.1 Le composant <transition>
        • 4.1.2 Exemple d'une transition entrante et sortante en fondu
      • 4.2 Optimisation des performances
        • 4.2.1 Utilisation du lazy-loading avec les composants asynchrones
        • 4.2.2 Utiliser le préchargement avec la méthode webpackPrefetch
  • Utiliser Vuex pour la gestion d'états
    • 1. Partager un état global entre plusieurs composants
      • 1.1 Problématique
        • 1.1.1 Le flux de donnée unidirectionnel
        • 1.1.2 Utiliser les props et les évènements pour partager et accéder à l'état global
        • 1.1.3 Utiliser un bus d'évènement pour réagir aux actions
      • 1.2 Utilisation d'un store pour centraliser les données
        • 1.2.1 Déporter les états dans un objet partagé
        • 1.2.2 Tracer les mutations
        • 1.2.3 Utiliser Vuex
    • 2. Installer et utiliser le store Vuex
      • 2.1 Installation
        • 2.1.1 Avec un CDN
        • 2.1.2 Avec npm ou yarn
        • 2.1.3 Avec Vue CLI
      • 2.2 État
        • 2.2.1 Définir et accéder à une donnée de l'état
        • 2.2.2 Utiliser mapState() pour générer les propriétés calculées
      • 2.3 Accesseurs
        • 2.3.1 Accéder à une donnée d'état via un accesseur
        • 2.3.2 Utiliser mapGetters() pour générer les propriétés calculées
      • 2.4 Mutateurs
        • 2.4.1 Muter une donnée de l'état du store
        • 2.4.2 Muter plusieurs données avec une mutation
        • 2.4.3 Muter un objet ou un tableau
        • 2.4.4 Utiliser un fichier de constantes pour lister les types de mutations
        • 2.4.5 Utiliser mapMutations() pour générer les propriétés calculées
        • 2.4.6 Les mutations avec la directive v-model
      • 2.5 Actions
        • 2.5.1 Utiliser les actions pour des traitements asynchrones
        • 2.5.2 Utiliser mapActions pour générer les méthodes
        • 2.5.3 Chaîner des actions asynchrones
    • 3. Utiliser les modules pour organiser son store
      • 3.1 Séparer le store en plusieurs fichiers
      • 3.2 Utiliser les modules Vuex
    • Conclusion
    • Index

Auteur

Yoann GAUCHARDEn savoir plus

Après avoir débuté en SSII en tant que développeur et testeur, Yoann GAUCHARD s’est ensuite tourné vers les technologies web et mobile. Aujourd’hui développeur fullstack indépendant, passionné par les technologies web, il est spécialisé dans la conception et la réalisation de sites web avec Symfony ainsi que dans le développement d’applications web mobiles et de Progressive Web Apps avec Vue.js. Son expertise et ses compétences profitent autant à ses clients (start-up, PME/TPE et grands groupes), qu’aux stagiaires d’une école d’informatique à qui il dispense des formations. Aujourd’hui, il souhaite, avec l’écriture de ce livre, partager ses connaissances au plus grand nombre.

Yoann GAUCHARD vous dit tout sur la sortie de son nouveau livre Vue.JS, aux Editions ENI :
Pourquoi l'a-t-il écrit ?
À qui se destine-t-il ?

Caractéristiques

  • Nombre de pages 492 pages
  • Parution mai 2021
    • Reliure spirale - 17 x 21 cm (Médian)
    • ISBN : 978-2-409-02944-8
    • EAN : 9782409029448
    • Ref. ENI : EIMVUEJS
  • Parution mai 2021
    • HTML
    • ISBN : 978-2-409-02945-5
    • EAN : 9782409029455
    • Ref. ENI : LNEIMVUEJS

Téléchargements

En complétant ce formulaire, vous acceptez d'être contacté afin de recevoir des informations sur nos produits et services ainsi que nos communications marketing. Vous aurez la possibilité de vous désabonner de nos communications à tout moment. Pour plus d'informations sur notre politique de protection des données, cliquez ici.
  • Des fichiers complémentaires (12 114 Ko)