A simple, declarative, and composable way to fetch data for React components. This project was inspired by (and forked from) React Redux. Redux/Flux is a wonderful library/pattern for applications that need to maintain complicated client-side state; however, if your application is mostly fetching and rendering read-only data from a server, it can over-complicate the architecture to fetch data in actions, reduce it into the store, only to select it back out again. The other approach of fetching data inside the component and dumping it in local state is also messy and makes components smarter and more mutable than they need to be. This module allows you to wrap a component in a connect() decorator like react-redux, but instead of mapping state to props, this lets you map props to URLs to props. This lets you keep your components completely stateless, describe data sources in a declarative manner, and delegate the complexities of data fetching to this module.

Features

  • By default, the requests are compared using their URL, headers, and body
  • Automatic Refreshing
  • Functions can also be used for post data to the server in response to a user action
  • Functions can also be used to manually refresh data by overwriting an existing PromiseState
  • Identity requests, static data and transforming responses
  • Both request and response headers and other metadata are accessible

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow React Refetch

React Refetch Web Site

Other Useful Business Software
Save Up to 91% on Cloud Compute With Spot VMs Icon
Save Up to 91% on Cloud Compute With Spot VMs

Automatic sustained-use discounts. One free VM per month. No negotiation needed.

Run batch jobs at 60-91% off with Spot VMs. Long-running workloads get automatic discounts with sustained use.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of React Refetch!

Additional Project Details

Programming Language

JavaScript

Related Categories

JavaScript Software Development Software

Registered

2022-03-15