Note : outil de débug pour votre store redux

November 30 20183 minutes de lecture ngrx redux devtool

Voici une petite note sur le débug d'une application avec state management, notamment Redux, et plus précisément pour cet exemple, avec du NGRX. L'outil reste cependant agnostique de toute librairie et peut être implémenté n'importe où si l'on suit bien les étapes d'implémentation de la doc.

Je parle ici d'une extension chrome/firerox qui permet de visualiser tout ce qui se passe du point de vue de votre store redux, cette extension est pas mal utilisé depuis plus d'un an et, vu la praticité de l'outil, ça serait dommage de passer à coté.

Quels sont les outils ?

Vous pouvez trouver toutes les informations d'installation/d'utilisation ici :https://github.com/zalmoxisus/redux-devtools-extension.

à noter que si vous n’êtes pas dans un projet angular/ngrx ou que vous ne voulez pas dépendre d'un package supplémentaire (optionnel ci dessus) vous trouverez chaque étape pour implémenter vous même la communication entre votre store et l'extension du navigateur sur le premier lien.

@NgModule({
    declarations: [
        // ...
    ],
    imports: [
        // ...
        StoreDevtoolsModule.instrument({
            maxAge: 10
        })
    ],
    providers: [
        // ...
    bootstrap: [AppComponent]
})

Attention si, en Prod, vous voulez importer ce module ou non ; vous pouvez jouer avec les options ou la variable d’environnement pour ça.

Les tableaux de bord

Commençons par le premier menu déroulant en haut à gauche où il est écrit "Inspector". Nous pouvons choisir ici 3 boards différents:

redux-devtool-board.png

redux-devtool-tabs.gif

redux-devtool-chart.png

Conclusion, les actions possibles

Comme je l'ai dit, il existe pas mal d'outils pour le rejeu des actions durant l'utilisation de l'application :

Et en bonus

Voila pour la petite note, attention à ce que votre package store-devtool corresponde bien à la version majeure que vous utilisez pour NGRX.

Bon débug !