Skip to content

Instantly share code, notes, and snippets.

@taion
Created September 28, 2016 14:57
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save taion/bae1502979b875e74805be5b4604b620 to your computer and use it in GitHub Desktop.
import Relay from 'react-relay';
export default function runQuery(
queryNode,
args,
environment,
forceFetch = false,
) {
const query = Relay.createQuery(queryNode, args);
return new Promise((resolve, reject) => {
function callback({ done, error }) {
if (error) {
reject(error);
return;
}
if (done) {
const [result] = environment.readQuery(query);
resolve(result);
}
}
if (forceFetch) {
environment.forceFetch({ query }, callback);
} else {
environment.primeCache({ query }, callback);
}
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment