September 2017
Intermediate to advanced
216 pages
6h 8m
English
With Immutable.js collections, the idea is to detect any changes before any transformations and side-effects are run. You could, for example, detect changes after transformations but before side-effects:
const myList = List.of(1, 2, 3);const mySideEffect = (list) => { const transformed = list .map(v => v * v); if (!transformed.equals(mySideEffect.prev)) { mySideEffect.prev = transformed; transformed.forEach( v => console.log('transformed', v) ); }};mySideEffect(myList);// -> transformed 1// -> transformed 4// -> transformed 9mySideEffect(myList.set(0, 1));mySideEffect(myList.push(4));// -> transformed 1// -> transformed 4// -> transformed 9// -> transformed 16mySideEffect(myList.push(4));
The mySideEffect() ...
Read now
Unlock full access