New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

react-shared-state

Package Overview
Dependencies
Maintainers
1
Versions
24
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-shared-state

React Shared State

latest
Source
npmnpm
Version
0.3.1
Version published
Maintainers
1
Created
Source

React Shared State

React Shared State

Very simple shared state for your react app.

import React from 'react'
import { createProvider, SharedStore } from 'react-shared-state'

class NameStore extends SharedStore {
  setName = (newName) => this.setState({name: newName})
}

const NameProvider = createProvider(NameStore)

const HelloComponent = (props) => {
  return <div>
    <h1> Hello, {props.name} </h1>
    <button onClick={() => props.store.setName('Luke Skywalker')}>Set Name</button>
  </div>
}
const Hello = NameProvider.connect((store) => ({ 
  name: store.state.name,
  store: store 
}))(HelloComponent)

export function App() {
  return (
    <NameProvider initialState={{ name: 'Anonymous' }}>
      <Hello />
    </NameProvider>
  )
}

Install

yarn add react-shared-state
or
npm install react-shared-state

Quickstart

https://soofty.gitbook.io/react-shared-state/quickstart

Documentation

https://soofty.gitbook.io/react-shared-state/documentation

Live example

https://codesandbox.io/s/wy308n0k88

0.1.x => 0.2.x migration guide

  • mapStateToProps now accepts store instead of store.state as first argument
  • connect no longer passes store by it's name to a component
  • Preferable way to use connect is YourProvider.connect instead of building custom function
  • Changed Typescript's generics order from TOuterProps, TInnerProps to TInnerProps, TOuterProps (recompose format)

0.2.x => 0.3.x migration guide

getProvider replaced with createProvider(StoreClass?: class, storeId?: string)

Keywords

react

FAQs

Package last updated on 16 Dec 2020

Related posts