Skip to content

markalfred/magic-action-types

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✨ Magical ✨ Action Types (for Flux, Redux, etc)

But why tho?

This is annoying.

const INCREMENT = 'app/counter/INCREMENT'
const DECREMENT = 'app/counter/DECREMENT'

This is weird.

const types = keyMirror({
  INCREMENT: null,
  DECREMENT: null,
})

But this is ✨ magical ✨

const { INCREMENT, DECREMENT } = types('app/counter')

Usage

npm install magic-action-types

Use object destructuring to simplify your action type definitions.

import types from 'magic-action-types'

const { INCREMENT, DECREMENT } = types()
// INCREMENT === "INCREMENT"
// DECREMENT === "DECREMENT"

Pass a namespace to the types function.

const { INCREMENT, DECREMENT } = types('app/counter')
// INCREMENT === "app/counter/INCREMENT"
// DECREMENT === "app/counter/DECREMENT"

Go ahead, save your namespace too.

const counterTypes = types('app/counter')

const { INCREMENT, DECREMENT } = counterTypes
// INCREMENT === "app/counter/INCREMENT"
// DECREMENT === "app/counter/DECREMENT"

About

✨ Magical Action Types (for Flux, Redux, etc)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published