Skip to content

Instantly share code, notes, and snippets.

@alonbardavid
Created October 9, 2019 17:43
Show Gist options
  • Save alonbardavid/ea3a0c738cfd24d33932161a19e381fd to your computer and use it in GitHub Desktop.
Save alonbardavid/ea3a0c738cfd24d33932161a19e381fd to your computer and use it in GitHub Desktop.
Why use mobx gist4
const ResourceContext = React.createContext();
function useResource(){
const [resource,setResource] = React.useState({});
return {
resource,
requestResource(){
setResource({loading:true});
return fetch(`url/resource/${resourceId}`)
.then(response=>response.json())
.then(json=>setResource({loading:false,resource:json}))
.catch(error=>setResource({loading:false,error}))
}
}
}
function resourceProvider(){
const value = useResource();
return <ResourceContext.Provider value={value} >
{children}
</ResourceContext.Provider>
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment