Autoplay
Autocomplete
Vidéo précédente
Terminer et continuer
La MEAN stack par la pratique
Créer une API REST avec Express.js
La stack MEAN (Mongo Express Angular Node) (5:07)
Configuration du backend (.gitignore et .eslintrc) (11:52)
Création d'une API (11:17)
Utilisation de middlewares (13:16)
Test de notre application à l'aide de Postman (5:13)
Installation de nodemon (2:34)
Appeler un script npm depuis un autre script (3:35)
Gérer les requêtes GET vers '/blog-posts' (5:53)
Création d'un middleware (7:24)
CRUD vers une base MongoDB via Mongoose
Installation et configuration de Mongoose (10:05)
Création d'un modèle mongoose (11:23)
Test du POST d'un nouveau document (8:35)
Afficher les documents créés dans Mongo CLI (2:04)
Récupérer tous les blog posts depuis MongoDB (4:11)
Récupérer un document par son ID (7:42)
Supprimer un document par son ID (6:00)
Application cliente avec Angular 7 et Angular Material
Générer une application avec Angular-CLI (4:45)
Installation d'Angular Material (3:47)
Utilisation d'Angular-CLI pour générer un module et des components (9:11)
Récupérer tous les blog posts depuis le backend Express (15:00)
Utilisation d'une mat-toolbar (4:06)
Afficher une liste de blog posts en recourant à mat-card (8:21)
Accéder à un blog post par son ID depuis le backend Express (13:18)
Afficher le détail d'un blog post (12:43)
Gérer les erreurs 404 (3:20)
Création d'une page d'admin listant tous les blog posts (8:11)
Les propriétés permettant de personnaliser les composants d'Angular Material (3:08)
S'abonner à un Observable côté TypeScript (9:12)
Supprimer plusieurs documents (7:08)
Supprimer plusieurs documents côté backend et frontend (18:23)
Afficher le bouton de suppression conditionnellement (3:10)
Les formulaires : création en Angular 7 et soumission vers un serveur Express.js
Formulaire permettant de créer de nouveaux blog posts (9:07)
FormGroup et FormBuilder propres au reactive forms (8:03)
Modifications finales du formulaire (2:36)
Poster un nouveau blog post au serveur (5:38)
Remise à zéro du formulaire et des validateurs après une soumission réussie (6:19)
Communication entre components de même niveau à l'aide d'un Subject (11:02)
Upload d'images
Upload d'une image à l'aide de multer côté serveur (8:47)
Tester l'upload de fichier à l'aide de Postman (4:18)
Tester les extensions de fichiers autorisés à être uploadés (2:53)
Ajouter l'upload de fichier côté client (6:10)
Poster une image depuis Angular vers le serveur Express.js (5:17)
Associer une image uploadée à un blog post (8:36)
Afficher une image uploadée dans le client (5:28)
Gérer l'édition de documents existants
Component dédié à l'édition d'un blog post (partie HTML) (7:33)
Component dédié à l'édition d'un blog post (partie TypeScript) (9:24)
Router vers blogpost-edit.component.ts (3:58)
Mise à jour côté client et côté serveur (15:28)
Edition des blog posts existants pour ajouter une image (3:14)
Création d'un générateur d'images réduites
Création d'une fonction de redimensionnement d'images (7:32)
Redimensionner une image et ajouter son chemin au document MongoDB (11:57)
Afficher les images de petite taille sur la page listant tous les blog posts (4:31)
Remplacement d'un Reactive Form par un Template Driven Form (10:59)
Installation d'un éditeur de texte
Installation de ngx-editor (4:12)
Utilisation de ngx-editor (9:35)
Authentification avec Passport
Configuration de Passport (12:05)
Implémentation de la stratégie passport-local (13:45)
Implémentation de la stratégie passport-local (suite) (16:01)
Loguer un utilisateur existant avec Passport (7:49)
Création du component d'authentification 'AuthComponent' (10:18)
Création d'un service Angular d'authentification (10:21)
Création d'un Http interceptor Angular (11:27)
Configuration de CORS dans le contexte de sessions (4:47)
Logout (8:13)
Rediriger les anonymes vers la page de login (2:59)
Protéger la route '/delete' avec Passport (5:41)
Afficher les erreurs du serveur côté client (3:18)
dernière mise à jour lundi 14 janvier 2019
Afficher les images de petite taille sur la page listant tous les blog posts
Contenu verrouillé
Si vous êtes déjà inscrit
vous devrez vous connecter
.
S'inscrire à la formation pour déverrouiller