Effector

Effector

  • Docs
  • Try
  • API
  • Blog
  • Twitter
  • GitHub

›effector

effector

  • API Reference
  • Event
  • Store
  • Effect
  • Domain
  • createStore
  • createEvent
  • createEffect
  • createDomain
  • createStoreObject
  • combine
  • restore
  • createApi
  • clearNode
  • merge
  • split
  • sample
  • guard
  • forward
  • fromObservable

effector-react

  • API Reference
  • useStore
  • useStoreMap
  • useList
  • createComponent
  • Gate
  • createGate
  • useGate
  • createStoreConsumer

effector-vue

  • API Reference
  • VueEffector
  • ComponentOptions
  • Vue
Edit

createStore(defaultState, config?)

Creates a store.

Arguments

  1. defaultState (State): Default state
  2. config (Object): Optional configuration
    • name (String): Name for the store. Babel plugin can set it from variable name, if not passed explicitly in config.

Returns

(Store): An object that holds the state tree. There can be multiple stores.

Example

// Create events
const addTodo = createEvent()
const clearTodos = createEvent()

// Create store
const todos = createStore([]) // <-- Default state

todos
  // Add reducer
  .on(addTodo, (state, todo) => [...state, todo])
  // Will reset store to default state when clearTodos is fired
  .reset(clearTodos)

// Create derived store
const selectedTodos = todos.map(todos => {
  // Filter array inside store
  return todos.filter(todo => !!todo.selected)
})

// Handle side effects
todos.watch(state => console.log(state))
← DomaincreateEvent →
Effector
Docs
Getting StartedAPI Reference
Community
User ShowcaseStack OverflowGitterTwitter
More
GitHubStar
Copyright © 2019 zerobias