【发布时间】:2020-09-29 02:51:10
【问题描述】:
我目前正在使用单独的 .graphql 文件加载 GraphQL 架构,但它被封装在字符串中:
schema.graphql
const schema = `
type CourseType {
_id: String!
name: String!
}
type Query {
courseType(_id: String): CourseType
courseTypes: [CourseType]!
}
`
module.exports = schema
然后将其用于apollo-server:
index.js
const { ApolloServer, makeExecutableSchema } = require('apollo-server')
const typeDefs = require('./schema.graphql')
const resolvers = { ... }
const schema = makeExecutableSchema({
typeDefs: typeDefs,
resolvers
})
const server = new ApolloServer({
schema: schema
})
server.listen().then(({ url }) => {
console.log(`Server ready at ${url}.`)
})
有没有办法简单地加载一个看起来像这样的 .graphql?
schema.graphql
type CourseType {
_id: String!
name: String!
}
type Query {
courseType(_id: String): CourseType
courseTypes: [CourseType]!
}
那么它会被解析到index.js?我注意到graphql-yoga 支持这一点,但想知道apollo-server 是否支持。我在文档中的任何地方都找不到它。我也无法让fs.readFile 工作。
【问题讨论】:
标签: node.js graphql apollo apollo-server