Pros and Cons of Using Immutability With React
A description of how to properly immutably update objects and arrays using functions like assign and slice
A reminder to avoid the built-in Array functions that mutate the array, with snippets demonstrating alernative immutable functionality
A reminder that "slice" and "splice" are different functions with different behavior
Immutable Data from Scratch
Demonstrates building up an immutable update utility library similar to React's Update Addons
Immutable Objects with
A quick look at how to use
Object.freezeto enforce immutability.
In-depth article covering the value of immutable data, and two common JS libraries
Immutability is Not Enough
A look at how using an immutable data approach doesn't magically prevent all bugs.
An overview of how to accomplish add/remove/replace operations on JS arrays, comparing mutable vs immutable approaches to each.
Redux Docs: Immutable Update Patterns
https://redux.js.org/recipes/structuring-reducers/immutable-update-patterns Some useful examples for correctly updating data immutably, including nested objects, inserting and removing items in arrays, and updating items in arrays, as well as some common mistakes that occur. Important to know when using Redux, but the info is not Redux-specific.
Immutably setting a value in a JS array (or how an array is also an object)
An example of how
Object.assigncan be used to immutably update an array
Why Mutation Can Be Scary
A detailed look at how JS objects and primitives behave in relation to mutability, how
Object.assignworks, and some alternative functions for merging objects.
Immutability and React
Immutability in React
Covers the reasons and basic concepts of using immutable data with React
Why Should I Care About Immutable Data In React?
Describes the major benefits of using immutable data in React, with a demo
React: A (very brief) talk about immutability
Talks about the issues with mutation, and some ways to update immutably
Comparing and Modifying Objects in React
Some examples of comparing objects inside of React's lifecycle methods, and how to update them properly.
Handling State in React: Four Immutable Approaches to Consider
A summary of four different ways to update state immutably
Immutability in React and Redux
Immutable Data Libraries
Introducing Immer: Immutability the easy way
Michel Weststrate, author of MobX, introduces his new Immer library, which uses ES6 proxies to allow writing normal mutative code while the updates are applied immutably.
List of immutable libraries
A follow-up to James Longster's article, with pointers to numerous immutable data libraries
Redux Ecosystem Links: Immutable Data
A somewhat opinionated article from the author of a new immutable data library comparing different options, but still well-written and informative about the pros and cons of each.
An introduction to the API and use cases for Immutable.js
How to use Immutable.js Records with React and Redux
Examples for using Immutable.js records for clarity and consistency of data management
Immutable.js: An Introduction with examples written for humans
A detailed series of tutorials explaining how to use Immutable.js's API
Seamless-Immutable: An Alternative to Immutable.js
Examples of how to use the Seamless-Immutable library, and how it compares to Immutable.js
evolvein Redux reducers to create new state
Some quick examples of how Ramda's API can be used for applying immutable data updates
How to Use Immutable.js in a React Redux Application
Answers to six common questions about why and how to use Immutable.js in a React/Redux app, including whether to keep everything as Immutable.js objects, whether to use it inside of components, and potential benefits of using Immutable.js
Immutable Deep State Updates in React with Ramda.js
Some excellent examples of how to use Ramda's "lens" functions to define immutable state update logic
Why I Don't Use Immutable.js with Redux
Thoughts on the pros and cons of using Immutable.js in a Redux app
Using Immutable.js with Redux
A follow-up to the previous article, with several examples of how to properly use Immutable.js with Redux
Should I use Immutable.js with Redux?
A detailed list of pros and cons for using Immutable.js in a Redux app
Practical Guide to using Immutable.js with Redux and React
A follow-up to the previous article, showing how to correctly set up and use Immutable.js with Redux
An in-depth look at a new lens-style immutable update utility called Qim, including what problems it helps solve and how to use it.
Lenses with Immutable.js
Discusses how "lenses" can be used to dig into data structures and update them in an immutable way, and how to define lenses that work on Immutable.js objects.
You're missing out on ImmutableJS Records
An introduction to the Immutable.js Record type, and how it can be used to define data types
Immutability through Mutability - Immer & Redux
A look at Michel Weststrate's Immer library, which uses ES6 proxies to produce immutable updates using normal mutative code. Shows how this can simplify nested state updates in Redux reducers.