1.0.0-alpha.1.3 • Published 5 years ago
@midgar/apollo-server v1.0.0-alpha.1.3
@midgar/apollo-server
PLugin Midgar pour ajouter un service Apollo serveur avec loader de modules graphql et injéction de services.
Installation
$ npm i @midgar/apollo-server --save
Si tout s'est bien passé, un message de confirmation s'affiche:
#midgar-cli
@midgar/apollo-server added to plugins.js !
Fonctionnement
Ajoute un dossier de plugin midgar-graphql: ./graphql/ pour les modules graphl.
module grapql
Un module graphql est un fichier javacript exportant les typeDefs et les resolvers graphql.
Exemple d'un module graphl:
import { gql } from 'apollo-server-express'
// Type defs graphql
const typeDefs = gql`
type User {
id: ID!
email: String!
}
extend type Query {
addUser(email: String): User
getUsers: [User]
}
`
export default {
// Services à incjecter
dependencies: ['mid:user']
graphql: (mid, userService) => {
return {
typeDefs,
resolvers:{
User: {
...
}
Query: {
createUser: async (parent, args, ctx, info) => {
await userService.create(args.email, args.parssword)
},
getUsers: (parent, args, ctx, info) => {
...
},
}
}
}
}
}
Vous pouvez séparrer le fichier si besoin:
import typeDefs from './user.typedefs'
import resolvers from './user.resolvers'
export default {
dependencies: ['mid:user']
graphql: (...args) => {
return {
typeDefs,
resolvers: () => resolvers(...args)
}
}
}
Les fichiers .typedefs.js et .resolvers.js ne sont pas importé lors de l'import des modules graphql.
1.0.0-alpha.1.3
5 years ago
1.0.0-alpha.1.2
5 years ago
1.0.0-alpha.1.1
5 years ago
1.0.0-alpha.1.0
5 years ago