Skip to content

Latest commit

 

History

History
73 lines (56 loc) · 2.07 KB

SELECTORS.md

File metadata and controls

73 lines (56 loc) · 2.07 KB

<- to the main page

Using Selectors

1. Create selectors

// selectors.js

import { createSelector, useStorage } from 'master-hook'

export const mySelector = createSelector(
  () => useStorage('hook-n1').value,

  (value) => {
    const newValue = value + 'opopop'
    return newValue
  }
)

2. Pass selectors to hooks

// hooks.js

import { MasterHook } from 'master-hook'
import { mySelector } from './selectors'

export const useMyHook = MasterHook({
  storage: 'hook-n1',
  selectors: { mySelector },
  initialState: { value: 'hoooook' },
})

3. Get selectors from the hooks

// component.jsx

import React from 'react'
import { useMyHook } from './hooks.js'

export const Component = () => {
  const { mySelector } = useMyHook()

  return (
    <div onClick={handleClick}>
      {mySelector}
    </div>
  )
}

See more: