Need advice about which tool to choose?Ask the StackShare community!

MobX

748
516
+ 1
114
redux-thunk

754
185
+ 1
6
Add tool

MobX vs redux-thunk: What are the differences?

# Introduction
Below are the key differences between MobX and redux-thunk.

1. **State Management**: MobX allows for more flexibility and simplicity in managing state compared to redux-thunk as it does not require actions and reducers.
2. **Asynchronous Operations**: Redux-thunk is specifically designed for managing asynchronous operations in Redux, while MobX does not provide built-in support for managing asynchronous operations.
3. **Immutability**: Redux-thunk encourages immutability of state updates through reducers, while MobX allows for mutable state updates which can streamline development but may lead to potential issues with data consistency.
4. **Boilerplate Code**: MobX generally results in less boilerplate code compared to redux-thunk as it eliminates the need for action creators, action types, and reducers.
5. **Learning Curve**: Redux-thunk has a steeper learning curve for developers due to its concepts like actions, action creators, and reducers, whereas MobX is often seen as easier to grasp and implement.
6. **Community Support**: Redux-thunk has a larger community and ecosystem of middleware and tools specifically designed for Redux, while MobX has a smaller but growing community support.

In Summary, MobX and redux-thunk differ in state management, handling asynchronous operations, approach to immutability, amount of boilerplate code required, learning curve, and community support.

Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of MobX
Pros of redux-thunk
  • 26
    It's just stupidly simple, yet so magical
  • 18
    Easier and cleaner than Redux
  • 15
    Fast
  • 13
    Automagic updates
  • 13
    React integration
  • 10
    Computed properties
  • 8
    ES6 observers and obversables
  • 7
    Global stores
  • 3
    Flexible architecture the requeriment
  • 1
    Has own router package (mobx-router)
  • 6
    Easy

Sign up to add or upvote prosMake informed product decisions

Cons of MobX
Cons of redux-thunk
  • 1
    Maturity
    Be the first to leave a con

    Sign up to add or upvote consMake informed product decisions

    What is MobX?

    MobX is a battle tested library that makes state management simple and scalable by transparently applying functional reactive programming (TFRP). React and MobX together are a powerful combination. React renders the application state by providing mechanisms to translate it into a tree of renderable components. MobX provides the mechanism to store and update the application state that React then uses.

    What is redux-thunk?

    Redux Thunk middleware allows you to write action creators that return a function instead of an action. The thunk can be used to delay the dispatch of an action, or to dispatch only if a certain condition is met. The inner function receives the store methods dispatch and getState as parameters.

    Need advice about which tool to choose?Ask the StackShare community!

    Jobs that mention MobX and redux-thunk as a desired skillset
    What companies use MobX?
    What companies use redux-thunk?
    Manage your open source components, licenses, and vulnerabilities
    Learn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with MobX?
    What tools integrate with redux-thunk?

    Blog Posts

    What are some alternatives to MobX and redux-thunk?
    Relay Framework
    Never again communicate with your data store using an imperative API. Simply declare your data requirements using GraphQL and let Relay figure out how and when to fetch your data.
    Knockout
    It is a JavaScript library that helps you to create rich, responsive display and editor user interfaces with a clean underlying data model. Any time you have sections of UI that update dynamically (e.g., changing depending on the user’s actions or when an external data source changes), it can help you implement it more simply and maintainably.
    GraphQL Cache
    A custom middleware for graphql-ruby that handles key construction and cache reads/writes transparently.
    Flux
    Flux is the application architecture that Facebook uses for building client-side web applications. It complements React's composable view components by utilizing a unidirectional data flow. It's more of a pattern rather than a formal framework, and you can start using Flux immediately without a lot of new code.
    Apollo
    Build a universal GraphQL API on top of your existing REST APIs, so you can ship new application features fast without waiting on backend changes.
    See all alternatives