Le Blog EasyAngularKit

Apprendre Angular, un pas à la fois.

Des articles clairs, pratiques, et sans blabla, pour apprendre Angular comme on code vraiment et suivre sa communauté.

87 articles trouvés

Sujets populaires

📚 Nos articles

providers vs viewProviders : le service qui disparaît quand tu projettes ton contenu

10 juillet 2026

Ton Form fournit un Validation. Ton Field l'injecte. Ça marche en interne, ça pète en NG0201 quand le Field est projeté via ng-content. La différence entre providers et viewProviders tient en une règle de 3 lignes, et elle change la surface DI complète de ton composant. Démonstration, explication de la résolution, 4 patterns à connaître.

Angular Dependency Injection providers viewProviders Content Projection

SSR Angular : 4 erreurs avec `window` qui plantent ton rendu serveur (et le fix propre en 3 primitives)

8 juillet 2026

Tu actives le SSR, ton app fonctionnait très bien. Puis `ReferenceError: window is not defined` au premier build. Ou pire : ça build, mais ton API est refetchée, tes observers restent actifs côté serveur et ton bundle SSR gonfle. Voici les 4 erreurs Angular 17+ qui te piègent avec `window` / `document` / `localStorage` et le fix propre avec `PLATFORM_ID`, `DOCUMENT` et `afterNextRender`.

Angular SSR PLATFORM_ID afterNextRender Hydration Performance

ng-content : 6 patterns de projection Angular qui séparent le composant réutilisable du jetable

6 juillet 2026

Tu poses un <ng-content> dans ton composant Card et tu penses que c'est réutilisable. Sauf que le slot vide casse ton layout, l'ordre de tes select te joue des tours, un <ng-container> disparait dans un slot à sélecteur de tag, et détecter un slot vide te force à toucher au DOM. 6 patterns concrets, tous vérifiés en test, avec du signal-based contentChild pour boucler proprement en Angular 20+.

Angular Content Projection ng-content Composants Signals

Lazy-loader la CSS de co-branding : comment j'ai retiré 2,5 Mo du bundle initial sur une app à 30 marques

1 juillet 2026

Une app multi-marques qui charge les 30 thèmes CSS après le login alors qu'un user n'en verra qu'un seul. On est passés de 6,5 Mo à 4 Mo de bundle initial en lazy-loadant la feuille de la marque active. Voici la ligne de décision entre token-swap global et lazy-load, et le code Angular 17+ qui va avec (resolver, injection de link, FOUC, SSR).

Angular Performance CSS Co-branding Lazy Loading Bundle

Stylelint : arrête de reprendre tes devs sur les px en review, laisse la CI le faire

1 juillet 2026

Sur un gros projet Angular avec des devs qui tournent et une majorité de profils back, tu passes tes revues à répéter les mêmes remarques CSS : px au lieu de rem, hex en dur au lieu des tokens. Voici comment Stylelint transforme ces conventions en règles qui échouent la CI, avec la config exacte (px, hex, fonts) et le piège Tailwind v4 à désamorcer.

Stylelint CSS Angular Tailwind Accessibilité Design System

HttpContext Angular : 5 patterns pour configurer tes interceptors sans header magique

19 juin 2026

Tu skips l'auth avec un header X-Skip-Auth que ton interceptor lit puis supprime ? Tu désactives ton loader avec un meta non typé passé en query string ? HttpContext résout ça depuis Angular 12 : des tokens typés, scopés à une requête, lus dans n'importe quel interceptor fonctionnel. 5 patterns concrets, le before/after, et comment tester.

Angular HttpClient Architecture Interceptors Bonnes pratiques

Angular 19+ : `provideAppInitializer` enterre `APP_INITIALIZER` (et te fait gagner 70% de boilerplate)

10 juin 2026

Angular 19 a introduit provideAppInitializer et marqué le vieux token APP_INITIALIZER deprecated. Plus de useFactory, plus de deps array typé any, plus de double lambda : un callback qui tourne en contexte d'injection, avec inject() qui marche directement. Migration complète en 4 minutes, avec les pièges qui restent.

Angular APP_INITIALIZER provideAppInitializer Bootstrap Dependency Injection

AngularKit

Suite d'outils pour développeurs Angular francophones. Apprends, modernise tes réflexes, audite ta codebase.

Produits

Contact

Légal

© 2026 AngularKit. Tous droits réservés.