On this page

mergeResolvers

The mergeResolvers function exported by @graphql-tools/merge.

mergeResolvers<TSource, TContext>(resolversDefinitions, options?): IResolvers<TSource, TContext>

Defined in: packages/merge/src/merge-resolvers.ts:39

Deep merges multiple resolver definition objects into a single definition.

Type Parameters

TSource

TSource

TContext

TContext

Parameters

resolversDefinitions

IResolvers<TSource, TContext> | Maybe<IResolvers<TSource, TContext>>[] | null | undefined

Resolver definitions to be merged

options?

MergeResolversOptions

Additional options

const { mergeResolvers } = require('@graphql-tools/merge');
const clientResolver = require('./clientResolver');
const productResolver = require('./productResolver');

const resolvers = mergeResolvers([
 clientResolver,
 productResolver,
]);

If you don’t want to manually create the array of resolver objects, you can also use this function along with loadFiles:

const path = require('path');
const { mergeResolvers } = require('@graphql-tools/merge');
const { loadFilesSync } = require('@graphql-tools/load-files');

const resolversArray = loadFilesSync(path.join(__dirname, './resolvers'));

const resolvers = mergeResolvers(resolversArray)

Returns

IResolvers<TSource, TContext>