@codeforcoffee/simple-state v1.0.0-beta.3
@codeforcoffee/simple-state
Simple State for SPAs
Install
npm install @codeforcoffee/simple-state
or yarn add @codeforcoffee/simple-state
ES Module
import SimpleState from '@codeforcoffee/simple-state';
Getting Started
After importing the library, you can create as many instances as you'd like (but likely should not).
If you use create-react-app
or anything else that uses babel, you will need to update your config files for your project to enable @babel/plugin-proposal-class-properties
.
Generic Babel Config
Install the following packages:
npm i --save-dev @babel/preset-env @babel/preset-react @babel/plugin-proposal-class-properties
"babel": {
"presets": [
"@babel/preset-env",
"@babel/preset-react"
],
"plugins": [
[
"@babel/plugin-proposal-class-properties"
]
]
}
create-react-app
If using CRA, follow the above steps (the config block will be added to your package.json), npm i @codeforcoffee/simple-state
.
You will need to npm run eject
. From there, in your scripts/webpack.*.config
files, update your Babel config block:
presets: [
[
require.resolve("babel-preset-react-app/dependencies"),
{ helpers: true }
]
],
plugins: ["@babel/plugin-proposal-class-properties"],
Examples
An example application is located in this repository under the example folder.
store = new SimpleState({ amiibo: [] });
Then you can update the State:
store.updateStore({ myValue: "isNotEmpty" });
You can get state:
store.getState();
Previous state:
store.getPreviousState();
and initial state:
store.getInitialState();
and to JSON for API calls:
store.toJSON();
Documentation
Classes
Objects
SimpleState
Created by codeforcoffee on 11/2/18.
Kind: global class
new SimpleState(initialState)
constructor
Param | Type |
---|---|
initialState | * |
simpleState.getInitialState()
Returns initial state
Kind: instance method of SimpleState
simpleState.updateStore(newAttributes, mergeArrays)
Update the store. MergeArrays is true by default.
Kind: instance method of SimpleState
Param | Type | Default |
---|---|---|
newAttributes | * | |
mergeArrays | Boolean | true |
simpleState.getState()
Get current state
Kind: instance method of SimpleState
simpleState.getPreviousState()
Get prior state
Kind: instance method of SimpleState
simpleState.toJSON()
converts state to JSON
Kind: instance method of SimpleState
SimpleState : object
Kind: global namespace
- SimpleState : object
new SimpleState(initialState)
constructor
Param | Type |
---|---|
initialState | * |
simpleState.getInitialState()
Returns initial state
Kind: instance method of SimpleState
simpleState.updateStore(newAttributes, mergeArrays)
Update the store. MergeArrays is true by default.
Kind: instance method of SimpleState
Param | Type | Default |
---|---|---|
newAttributes | * | |
mergeArrays | Boolean | true |
simpleState.getState()
Get current state
Kind: instance method of SimpleState
simpleState.getPreviousState()
Get prior state
Kind: instance method of SimpleState
simpleState.toJSON()
converts state to JSON
Kind: instance method of SimpleState
Changelog
- 1.0.0-beta.0 - Initial release