Skip to content

pawarvijay/react-ui-memoized-selectors-reselect

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

import { createSelector } from 'reselect'

const state = { todos: [ { id: 0, completed: false }, { id: 1, completed: true } ], alerts: [ { id: 0, read: false }, { id: 1, read: true } ] }

const selectCompletedTodos = (state) => { console.log('selector ran') return state.todos.filter(todo => todo.completed === true) }

selectCompletedTodos(state) // selector ran selectCompletedTodos(state) // selector ran selectCompletedTodos(state) // selector ran

const memoizedSelectCompletedTodos = createSelector( [(state) => state.todos], todos => { console.log('memoized selector ran') return todos.filter(todo => todo.completed === true) } )

memoizedSelectCompletedTodos(state) // memoized selector ran memoizedSelectCompletedTodos(state) memoizedSelectCompletedTodos(state)

console.log(selectCompletedTodos(state) === selectCompletedTodos(state)) //=> false

console.log( memoizedSelectCompletedTodos(state) === memoizedSelectCompletedTodos(state) ) //=> true

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published