Skip to content

graphql-compose/graphql-compose-dataloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

graphql-compose-dataloader – DEPRECATED

Greenkeeper badge Travis npm version npm Add DataLoader to graphql-composer resolvers.

Deprecation reason

DataLoader cannot be expressed like a simple plugin. Mostly this plugin was used with graphql-compose-mongoose models. From graphql-compose-mongoose@9.0.0 (read more) it starts provide new built-in resolvers dataLoader & dataLoaderMany resolvers which implement DataLoader logic in different manner.

Installation

npm install graphql-compose-dataloader --save

Modules graphql, graphql-compose are in peerDependencies, so should be installed explicitly in your app. They have global objects and should not have ability to be installed as submodule.

Example

import mongoose from 'mongoose';
import composeWithMongoose from 'graphql-compose-mongoose';
import composeWithDataLoader from 'graphql-compose-dataloader';

const LanguagesSchema = new mongoose.Schema({
  language: String,
  skill: {
    type: String,
    enum: [ 'basic', 'fluent', 'native' ],
  },
});

const Languages = mongoose.model('Languages', LanguagesSchema)
const LanguagesTC = composeWithDataLoader(composeWithMongoose(Languages),{cacheExpiration: 700})

Props

Prop Type Description
cacheExpiration number Expiration in number of milliseconds. This will clear the one request sendt via the resolver (Default: 500)
removeProjection boolean Remove projection, this will request fields on the requested document and put it to cache (Default: true)
debug boolean Enable debug? (Default: false)

License

======= MIT