Sync Angular router state with redux, including: current path, current url, query params, route params, fragment, previous route.

Usage no npm install needed!

<script type="module">
  import district01NgReduxRouter from 'https://cdn.skypack.dev/@district01/ng-redux-router';


Angular Redux Router

Sync Angular Router state with the Redux app state, gaining easy access to the entire route, not just the activated route.


  • @angular/router


npm install @district01/ng-redux-router --save

Import component in app.module.ts:

import { ReduxRouterModule } from '@district01/ng-redux-router';

    imports: [

export class AppModule {}

Initialize ReduxRouter with a dispatch function (e.g. using the @angular-redux/store package:

    private ngRedux: NgRedux<MyAppState>,
    private reduxRouter: ReduxRouter
) {


The ReduxRouter will listen for route changes and store the current, previous and active (pending) route in the state. The following properties are stored for each route:

  • url: the complete path including queryParams & fragments
  • path: the url path without queryParams & fragments
  • frament: the current active fragment
  • query: all queryParams found on the route
  • params: all route params found on the route

The ROUTE_UPDATE action will only be dispatched once the NavigationEnd event is triggered.