ng-state
  • Introduction
  • Main differences
  • Getting Started
    • Instalation
    • Examples
  • Core concepts
    • Main idea
      • More complex flow visualization
    • Configuration
      • Immer Setup
      • ImmutableJs Setup
    • Store
      • Operators
      • Optimistic updates plugin
      • Optimistic updates plugin
      • Form manager plugin
        • onChange hook
        • onPropertyChange
        • shouldUpdateState hook
        • Custom form elements
      • Persist state plugin
        • Configuring custom storage
    • Actions
      • Immer
      • ImmutaleJs
      • Injectable Actions
    • Components with Actions
      • Signal Actions
      • State Actions
    • @InjectStore decorator
    • @WithStore decorator
    • @ComponentState decorator
    • Dispatcher
  • Different scenarios
    • Passing list item index via router
    • ngOnChanges hook
    • FormManager pitfalls
  • Unit testing
    • Setup
    • Test store
    • Test actions
    • Test component with actions
    • Test with Angular TestBed
  • Debugging
    • Setup
    • Redux DevTools
    • Automated changes output
    • Manual state changes check
    • Additional debugging information
  • Production
    • Production mode
    • Server Side Rendering (SSR)
  • Other information
    • Best practices
    • CLI
      • Custom Configurations
    • Performance
    • Blog Posts
    • Contributing
Powered by GitBook
On this page

Was this helpful?

Main differences

Main differences from other RxJs store based state managements solutions

PreviousIntroductionNextInstalation

Last updated 9 months ago

Was this helpful?

  • Developers do not need to remember long nested paths to access store:

  • Decouples / Hides paths to state from components

  • Uses Redux like pure functions - actions to interact with state

  • No boilerplate

  • It is highly performant because of rxjs and ImmutableJS or Immer

  • Because of immutable data structure nobody can mutate state

  • Keeps state manipulation class close to component but separated which reduces boiler plate and enables cleaner unit testing

  • Uses Redux like messages for communication between not related components

  • Easy to test

  • Has functionality

  • Can restore state from server

Main idea
Actions
Dispatcher
Test actions
Redux DevTools integration and Time Travel
Server Side Rendering (SSR)