Migrer vers NgRx Signal Store sans toucher à un test
10 août 2026
Découper un composant puis passer au NgRx Signal Store sans modifier une ligne de test : la démonstration, commit par commit, de ce que le TDD promet vraiment.
22 articles du blog EasyAngularKit sur Architecture.
10 août 2026
Découper un composant puis passer au NgRx Signal Store sans modifier une ligne de test : la démonstration, commit par commit, de ce que le TDD promet vraiment.
10 août 2026
Une suite Angular de 23 tests avec un seul mock. Pourquoi le fake bat le mock presque partout, et le seul cas qui justifie vraiment un spy.
10 août 2026
inject() marche dans onInit et plante dans onDestroy. Le mécanisme derrière cette asymétrie, les deux formes de withHooks, et quand le hook tourne vraiment.
27 juillet 2026
Tu exposes ton state en readonly typé Signal<T> et ça a l'air propre. Un cast d'une ligne rouvre .set(). Ce que asReadonly() verrouille vraiment.
26 juillet 2026
Ce que ton enum TypeScript émet en JavaScript, les pièges de réordonnancement et de reverse mapping, et les 3 patterns d'union de littéraux qui le remplacent.
26 juillet 2026
Ton computed() qui trie réécrit sa propre source, et rien dans le type ne l'en empêche. readonly, as const, et pourquoi DeepReadonly casse sur une Date.
26 juillet 2026
Ton type d'état a quatre champs optionnels, donc seize combinaisons dont la plupart n'ont aucun sens. Union discriminée : narrowing et 4 pièges du discriminant.
22 juillet 2026
Qui décide du markup, qui possède le comportement : l'arbre de décision entre ngTemplateOutlet, ngComponentOutlet et ViewContainerRef.createComponent.
15 juillet 2026
Ton titre d'onglet est incohérent d'une page à l'autre ? Tu as éparpillé Title.setTitle() au lieu d'une TitleStrategy. Le pattern qui centralise tout.
5 juillet 2026
Séparer les tokens Tailwind v4 en deux couches : primitives dans @theme, sémantiques dans :root remappées par :has(), et les dérives qui ramènent du drift.
1 juillet 2026
Stylelint ne lit pas les styles inline d'un composant Angular : mesurer la zone aveugle, choisir entre styles: et styleUrl, ou linter le CSS-in-TS.
26 juin 2026
Tu re-provides un service pour contourner une mauvaise instance reçue ? Le bon flag d'inject() suffit : optional, self, skipSelf et host, sur cas réels.
19 juin 2026
Tu skippes l'auth avec un header X-Skip-Auth que ton interceptor supprime ensuite ? HttpContext le remplace par des tokens typés. 5 patterns et leurs tests.
16 juin 2026
Ton guard HTTP marche par les liens et part en 404 sur une URL collée : il est dans canMatch au lieu de canActivate. Diagnostic, cause et correctif.
16 juin 2026
Ton spinner tourne à l'infini sur un guard qui refuse ? Le cycle d'events du Router explique tout : la séquence, ce qui interrompt, et le loader qui tient.
7 juin 2026
Un formulaire présentationnel partagé, deux conteneurs distincts : le critère qui décide si create et edit partagent la forme, et les 4 pièges du pattern.
5 juin 2026
Pourquoi passer tes guards, resolvers et interceptors Angular en fonctions : CanActivateFn, ResolveFn, HttpInterceptorFn, tree-shaking, factories, tests.
17 mai 2026
Attacher des directives sur le host d'un composant avec hostDirectives : extraire un comportement dupliqué, aliaser ses inputs, composer plusieurs directives.
22 août 2025
Route dynamique, segment hybride, UrlMatcher custom et data resolver : les 4 patterns de routing Angular pour des URLs propres, et leurs pièges.
15 août 2025
Le style guide Angular v20 (par feature, inject(), protected) et les pièges de la migration v19 vers v20 sur stack Nx + Vitest, côté tests.
27 juin 2025
Comprenez la différence entre composants intelligents et composants présentiels, et structurez vos applications Angular proprement.
25 juin 2025
Une grille de décision simple pour savoir si votre projet Angular a vraiment besoin d’un store comme NgRx ou Signal Store.
Suite d'outils pour développeurs Angular francophones. Apprends, modernise tes réflexes, audite ta codebase.
© 2026 AngularKit. Tous droits réservés.