
Of Love and Hate: TypeScript, Redux and Immutable.js - phryneas
https://blog.mayflower.de/6630-typescript-redux-immutablejs.html
======
finchisko
I'm wondering why to bother with immutable.js, when redux already requires
that state changes has to be immutable.

~~~
phryneas
immutability of redux state is convention, but not enforced within redux. This
example is react state, but the same problems arise with redux:
[https://twitter.com/brayoh_k/status/978539881243774976](https://twitter.com/brayoh_k/status/978539881243774976)

~~~
finchisko
Maybe it's not enforced by redux itself, but you cannot use react-redux
component then. React-redux will only rerender component , if state or part of
it is new instance and not just mutated shallow copy, effectively requiring
the state to be immutable.

~~~
phryneas
The point of using immutable in this case is to prevent mutating the state by
accident as a side-effect of another action.

I know that react-redux will only rerender if things changed through a
dispatch (in fact, everything consuming redux.subsrcibe will not notice a
side-effect change), but those things happen if you do not use some kind of
immutability and especially if they have no immediate effect, it's a nightmare
to debug.

Read the article, this is discussed in the first few paragraphs.

