From f8676e85b6fe217ba9a9d8b7855dc2321ca3bbcc Mon Sep 17 00:00:00 2001 From: Matt Martin Date: Tue, 27 Feb 2018 20:13:53 -0800 Subject: [PATCH] feat: cache middleware now respects `cacheConfig.force` flag (thanks @voxmatt) The cacheConfig object (which is optional) can provide a flag to force refetches when a caching middleware is in place. The config is used on QueryRenderers: https://github.com/facebook/relay/blob/master/packages/react-relay/modern/ReactRelayQueryRenderer.js#L54 And in the options for a refetch inside a refetch container: https://facebook.github.io/relay/docs/en/refetch-container.html#refetch --- src/middlewares/cache.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/middlewares/cache.js b/src/middlewares/cache.js index d284f12..0d0c899 100644 --- a/src/middlewares/cache.js +++ b/src/middlewares/cache.js @@ -31,6 +31,10 @@ export default function queryMiddleware(opts?: CacheMiddlewareOpts): Middleware if (req.isFormData() && !allowFormData) { return next(req); } + + if (req.cacheConfig && req.cacheConfig.force) { + return next(req); + } try { const queryId = req.getID();