Giter VIP home page Giter VIP logo

store's Introduction

store

Frontend Store powered by json schemas and zustand

yarn add git+ssh://github.com/NREL-CYBER/store.git

tests

RUNS  tests/groceries-store.test.ts
RUNS  tests/oscal-store.test.ts

Test Suites: 2 passed, 2 total
Tests:       7 passed, 7 total
Snapshots:   0 total
Time:        7.713 s
Ran all test suites.

example

The store is a souped up object dictionary that uses zustand under the hood to notifiy react-components to re-render.

create a hook :

const useAddress=composeStore(addressSchema)

insert & display some data:

 ()=>{
     const {insert,all} = useAddress();
     return <>
     {all.map({street_address}=>
         <p>{street_address}</p>)}
        <button onClick={()=>{
            insert({street_address:'123 singularity way'})
        }}>
        </button>
     </>
 }

Use Immer for updates

 ()=>{
    const updateAddress = useAddress(x=>x.update)
    updateAddress(index,(addressDraft)=>{
        addressDraft.street_address += "( unverified )"
    })
 }

add a listener

 ()=>{
    const onAddressStoreChange = useAddress(x=>x.addListener)
    onAddressStoreChange((i, address, status)=>{
        if(status==="updating"){
            alert("updated address!")
        }
    })
 }

store's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.