0.2.0 • Published 7 years ago

fetch-adapter v0.2.0

Weekly downloads
1
License
ISC
Repository
github
Last release
7 years ago

fetch-adapter

npm version

fetch-adapter is a network adapter designed to enable redux-query to work with the Fetch API.

This adapter will not work with versions >= 1.4.0 and < 2.0.0 of redux-query due to an issue in the library.

Getting started

Install fetch-adapter via npm:

$ npm install --save fetch-adapter

If you are already using or setting up redux-query in your project, your store configuration should look like this:

// configureStore.js
import { applyMiddleware, createStore, combineReducers } from 'redux';
import { entitiesReducer, queriesReducer, queryMiddleware } from 'redux-query';
import createLogger from 'redux-logger';

export const getQueries = (state) => state.queries;
export const getEntities = (state) => state.entities;

const reducer = combineReducers({
    entities: entitiesReducer,
    queries: queriesReducer,
});

const logger = createLogger();
const store = createStore(
    reducer,
    applyMiddleware(queryMiddleware(getQueries, getEntities), logger)
);

In order to get redux-query to perform network requests with window.fetch(), all you need to do is pass this adapter to the advanced query middleware:

diff --git a/configureStore.js b/configureStore.js
index cd5be03..b3bda95 100644
--- a/index.js
+++ b/index.js
@@ -1,5 +1,6 @@
 import { applyMiddleware, createStore, combineReducers } from 'redux';
-import { entitiesReducer, queriesReducer, queryMiddleware } from 'redux-query';
+import { entitiesReducer, queriesReducer, queryMiddlewareAdvanced } from 'redux-query';
+import fetchNetworkAdapter from 'fetch-adapter';
 import createLogger from 'redux-logger';

 export const getQueries = (state) => state.queries;
@@ -13,5 +14,8 @@ const reducer = combineReducers({
 const logger = createLogger();
 const store = createStore(
     reducer,
-    applyMiddleware(queryMiddleware(getQueries, getEntities), logger)
+    applyMiddleware(
+      queryMiddlewareAdvanced(fetchNetworkAdapter)(getQueries, getEntities),
+      logger
+    )
 );
0.2.0

7 years ago

0.1.0

7 years ago