JSFiddle - React, Tailwind, and code Playground
by Khalil Zhang
HTML
<script src="reselect"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/reselect/4.0.0/reselect.min.js"></script>
JavaScript
const selectA = state => state.a
const selectB = state => state.b
const selectC = state => state.c
// Memoized selector
const selectABC = Reselect.createSelector(
[selectA, selectB, selectC],
(a, b, c) => {
console.log('Selector is running!')
return a + b + c
},
)
const state = {
a: 1,
b: 2,
c: 3
}
const abc = selectABC(state)
// Selector is running!
console.log(abc)
// 6
const anotherAbc = selectABC(state)
// No log output
console.log(anotherAbc)
// 6