react-radar

2.0.0-beta.111 • Public • Published

`react-radar`

  yarn add react-radar
// hello-world.js
import Radar from 'react-radar'
 
 
const Viewer = Radar.createRecord({
  name: 'Viewer',
  field: {
    uid: Radar.Key(),
    username: null,
    lastSeen: v => new Date(val),
    joinedOn: v => new Date(val)
  }
})
 
const GetViewer = Radar.createQuery({
  name: 'GetViewer',
  requires: props => ({viewer: Viewer`username`})
})
 
 
export default function App (props) {
  return (
    <Radar.Store
      cache={Radar.createCache()}
      network={Radar.createNetwork({url: 'https://radar-app.com/radar'})}
    >
      <Radar.Query connect='viewer' run={GetViewer()}>
        {({viewer}, radar) =>
          radar.statusText === 'loading'
            ? 'Loading...'
            : radar.statusText === 'error'
              ? <button onClick={radar.reload}>Try again?</button>
              : `Hello ${viewer.username}`}
      </Radar.Query>
    </Radar.Store>
  )
}


Readme

Keywords

none

Package Sidebar

Install

npm i react-radar

Weekly Downloads

4

Version

2.0.0-beta.111

License

MIT

Unpacked Size

460 kB

Total Files

317

Last publish

Collaborators

  • jaredlunde