2.0.3 • Published 2 years ago

create-context-state v2.0.3

Weekly downloads
229
License
MIT
Repository
github
Last release
2 years ago

create-context-state

Manage your react state with a simple context hook creator.

Version Weekly Downloads Bundled size Typed Codebase MIT License

Installation

# yarn
yarn add create-context-state

# pnpm
pnpm add create-context-state

# npm
npm install create-context-state

Usage

Create a context and provider with built in setters and getters.

import { createContextState } from 'create-context-state';

const [CountProvider, useCount] = createContextState(({ set, get }) => ({
  defaultValue: 0,
  value: 0,
  increment: () => set((state) => ({ value: state.value + 1 })),
  decrement: () => set((state) => ({ value: state.value - 1 })),
  reset: () => get('value') !== get('defaultValue'),
}));

const App = () => {
  return (
    <CountProvider>
      <Counter />
    </CountProvider>
  );
};

const Counter = () => {
  const { value, increment, decrement, reset } = useCount();

  return (
    <>
      <span>{value}</span>
      <button onClick={() => increment()}>+</button>
      <button onClick={() => decrement()}>-</button>
      <button onClick={() => reset()}>reset</button>
    </>
  );
};
2.0.3

2 years ago

2.0.3-beta.1

2 years ago

2.0.3-beta.0

2 years ago

0.0.0-pr2271.1

2 years ago

0.0.0-pr2271.2

2 years ago

0.0.0-pr2222.1

2 years ago

0.0.0-pr2223.1

2 years ago

0.0.0-pr2169.1

2 years ago

0.0.0-pr2169.2

2 years ago

0.0.0-pr2156.1

2 years ago

0.0.0-pr2118.1

3 years ago

0.0.0-pr2166.2

2 years ago

0.0.0-pr2166.3

2 years ago

0.0.0-pr2166.1

2 years ago

0.0.0-pr2128.2

3 years ago

0.0.0-pr2128.3

3 years ago

0.0.0-pr2166.4

2 years ago

0.0.0-pr2128.4

3 years ago

0.0.0-pr2128.1

3 years ago

0.0.0-pr2100.1

3 years ago

2.0.2

3 years ago

2.0.1

3 years ago

0.0.0-pr1966.1

3 years ago

0.0.0-pr1942.1

3 years ago

0.0.0-pr1948.1

3 years ago

0.0.0-pr1938.1

3 years ago

0.0.0-pr1922.1

3 years ago

0.0.0-pr1922.2

3 years ago

0.0.0-pr1879.1

3 years ago

2.0.0

3 years ago

0.0.0-pr1887.1

3 years ago

0.0.0-pr1873.1

3 years ago

2.0.0-beta.15

3 years ago

2.0.0-beta.14

3 years ago

2.0.0-beta.13

3 years ago

2.0.0-beta.18

3 years ago

2.0.0-beta.17

3 years ago

2.0.0-beta.16

3 years ago

0.0.0-pr1881.1

3 years ago

0.0.0-pr1881.2

3 years ago

0.0.0-pr1862.1

3 years ago

0.0.0-pr1885.1

3 years ago

2.0.0-beta.9

4 years ago

2.0.0-beta.8

4 years ago

2.0.0-beta.7

4 years ago

2.0.0-beta.2

4 years ago

2.0.0-beta.1

4 years ago

2.0.0-beta.0

4 years ago

2.0.0-beta.6

4 years ago

2.0.0-beta.5

4 years ago

2.0.0-beta.4

4 years ago

2.0.0-beta.3

4 years ago

0.0.0-pr1713.8

4 years ago

0.0.0-pr1713.7

4 years ago

0.0.0-pr1713.9

4 years ago

0.0.0-pr1713.4

4 years ago

0.0.0-pr1713.6

4 years ago

0.0.0-pr1713.5

4 years ago

0.0.0-pr1713.12

4 years ago

0.0.0-pr1713.11

4 years ago

0.0.0-pr1713.10

4 years ago

2.0.0-beta.11

4 years ago

2.0.0-beta.10

4 years ago

2.0.0-beta.12

3 years ago

0.0.0-pr1801.2

4 years ago

0.0.0-pr1801.1

4 years ago

0.0.0-pr1801.3

4 years ago

0.0.0-pr1713.2

4 years ago

0.0.0-pr1713.1

4 years ago

0.0.0-pr1713.3

4 years ago

0.0.0-pr1654.1

4 years ago

0.0.0-pr1629.1

4 years ago

0.0.0-pr1581.2

4 years ago

0.0.0-pr1581.3

4 years ago

0.0.0-pr1581.1

4 years ago

0.0.0-pr1608.1

4 years ago

0.0.0-pr1549.1

4 years ago

0.0.0-pr1558.1

4 years ago

0.0.0-pr1586.1

4 years ago

0.0.0-pr1552.3

4 years ago

0.0.0-pr1552.2

4 years ago

0.0.0-pr1552.1

4 years ago

0.0.0-pr1545.1

4 years ago

0.0.0-pr1532.1

4 years ago

0.0.0-pr1496.1

4 years ago

0.0.0-pr1452.1

4 years ago

0.0.0-pr1463.1

4 years ago

0.0.0-pr1367.1

4 years ago

0.0.0-pr1392.1

4 years ago

0.0.0-pr1365.1

4 years ago

0.0.0-pr1340.1

4 years ago

0.0.0-pr1344.1

4 years ago

0.0.0-pr1310.1

4 years ago

0.0.0-pr1305.1

4 years ago

0.0.0-pr1242.4

4 years ago

0.0.0-pr1242.2

4 years ago

0.0.0-pr1242.3

4 years ago

0.0.0-pr1242.1

4 years ago

0.0.0-pr1174.1

4 years ago

0.0.0-pr1161.2

4 years ago

0.0.0-pr1161.1

4 years ago

0.0.0-pr1158.1

4 years ago

0.0.0-pr1102.1

4 years ago

0.0.0-pr1031.1

4 years ago

1.0.1

5 years ago

1.0.0

5 years ago

0.0.0-pr706.36

5 years ago

0.0.0-pr997.1

5 years ago

0.0.0-pr993.1

5 years ago

0.0.0-pr706.35

5 years ago

0.0.0-pr706.34

5 years ago

0.0.0-pr706.33

5 years ago

0.0.0-pr950.7

5 years ago

0.0.0-pr950.6

5 years ago

0.0.0-pr950.5

5 years ago

0.0.0-pr706.32

5 years ago

0.0.0-pr706.31

5 years ago

0.0.0-pr963.1

5 years ago

0.0.0-pr965.1

5 years ago

0.0.0-pr706.29

5 years ago

0.0.0-pr706.30

5 years ago

0.0.0-pr959.1

5 years ago

0.0.0-pr706.28

5 years ago

0.0.0-pr960.1

5 years ago

0.0.0-pr950.4

5 years ago

0.0.0-pr956.1

5 years ago

0.0.0-pr706.27

5 years ago

0.0.0-pr950.3

5 years ago

0.0.0-pr930.1

5 years ago

0.0.0-pr706.20

5 years ago

0.0.0-pr706.21

5 years ago

0.0.0-pr706.22

5 years ago

0.0.0-pr706.23

5 years ago

0.0.0-pr706.24

5 years ago

0.0.0-pr706.25

5 years ago

0.0.0-pr706.26

5 years ago

0.0.0-pr941.2

5 years ago

0.0.0-pr941.1

5 years ago

0.0.0-pr950.2

5 years ago

0.0.0-pr950.1

5 years ago

0.0.0-pr706.19

5 years ago

0.0.0-pr920.1

5 years ago

0.0.0-pr905.4

5 years ago

0.0.0-pr905.3

5 years ago

0.0.0-pr922.1

5 years ago

0.0.0-pr706.18

5 years ago

0.0.0-pr919.1

5 years ago

0.0.0-pr919.2

5 years ago

0.0.0-pr706.17

5 years ago

0.0.0-pr911.2

5 years ago

0.0.0-pr706.16

5 years ago

0.0.0-pr905.2

5 years ago

0.0.0-pr911.1

5 years ago

0.0.0-pr706.15

5 years ago

0.0.0-pr877.9

5 years ago

0.0.0-pr877.8

5 years ago

0.0.0-pr905.1

5 years ago

0.0.0-pr877.7

5 years ago

0.0.0-pr706.14

5 years ago

0.0.0-pr901.1

5 years ago

0.0.0-pr877.5

5 years ago

0.0.0-pr877.6

5 years ago

0.0.0-pr706.13

5 years ago

0.0.0-pr877.4

5 years ago

0.0.0-pr706.12

5 years ago

0.0.0-pr706.11

5 years ago

0.0.0-pr885.1

5 years ago

0.0.0-pr877.2

5 years ago

0.0.0-pr877.3

5 years ago

0.0.0-pr706.10

5 years ago

0.0.0-pr877.1

5 years ago

0.0.0-pr706.9

5 years ago

0.0.0-pr706.8

5 years ago

0.0.0-pr706.7

5 years ago

0.0.0-pr706.6

5 years ago

0.0.0-pr706.5

5 years ago

0.0.0-pr706.4

5 years ago

0.0.0-pr706.3

5 years ago

0.0.0-pr862.2

5 years ago

0.0.0-pr862.1

5 years ago

0.0.0-pr706.2

5 years ago

0.0.0-pr706.1

5 years ago

0.0.0-pr706

5 years ago