@postinumero/storage

0.3.2 • Public • Published

@postinumero/storage

Example

import useLocalStorageJson from '@postinumero/storage/useLocalStorageJson';

export default function MyComponent() {
  const [checked = false, setChecked] = useLocalStorageJson('checked');
  return (
    <input
      type="checkbox"
      checked={checked}
      onChange={(event) => setChecked(event.target.checked)}
    />
  );
}

Hooks to read and write values

Read-write hooks return [value, setValue] type response. setValue in JSON hooks takes optional replacer and space arguments.

useLocalStorage(keyName)

useLocalStorageJson(keyName[, reviver])

useSessionStorage(keyName)

useSessionStorageJson(keyName[, reviver])

Hooks to read values

useLocalStorageValue(keyName)

Get value from localStorage across browser tabs.

useLocalStorageJsonValue(keyName[, reviver])

Get parsed JSON value or undefined from localStorage across browser tabs.

useSessionStorageValue(keyName)

Get value from sessionStorage.

useSessionStorageJsonValue(keyName[, reviver])

Get parsed JSON value or undefined from sessionStorage.

Other

localStorage

Same as window.localStorage, except updates hooks in all tabs (also current).

localStorageJson

Same as @postinumero/storage/localStorage, except parses/stringifies JSON values. getItem & setItem take optional JSON parse/stringify arguments: getItem(key[, reviver]), setItem(key, value[, replacer[, space]]).

sessionStorage

Same as window.sessionStorage, except updates hooks.

sessionStorageJson

Same as @postinumero/storage/sessionStorage, except parses/stringifies JSON values. getItem & setItem take optional JSON parse/stringify arguments: getItem(key[, reviver]), setItem(key, value[, replacer[, space]])

Readme

Keywords

none

Package Sidebar

Install

npm i @postinumero/storage

Weekly Downloads

220

Version

0.3.2

License

ISC

Unpacked Size

19.3 kB

Total Files

62

Last publish

Collaborators

  • arnosaine