official website of graphql引用此graphql npm来创建helloworld。
var { graphql, buildSchema } = require('graphql');
var schema = buildSchema(`
type Query {
hello: String
}
`);
var root = { hello: () => 'Hello world!' };
graphql(schema, '{ hello }', root).then((response) => {
console.log(response);
});
当我使用node
cmd运行此文件时,我得到了:
var schema = buildSchema(` ^
TypeError:buildSchema不是函数 在对象。 (
我想graphql的官方网站与此存储库不是最新的,因此,我尝试使用GraphQLSchema
代替buildSchema
var schema = GraphQLSchema(`
...
`)
我又犯了一个错误:
TypeError: Cannot call a class as a function
因此,我拨打new GraphQLSchema(...
而不是GraphQLSchema(...
我收到了另一个错误:
Error: Must provide configuration object.
那么,我在下一步做了什么,我探索了对象,我过滤了函数名称中包含schema
const graphql = require('graphql');
const functionsContainsSchema= Object.keys(graphql).filter(e => e.toLowerCase().includes('schema') && typeof graphql[e] ==='function');
console.log(
functionsContainsSchema
)
/* STDOUT
[ 'GraphQLSchema',
'buildClientSchema',
'buildASTSchema',
'extendSchema',
'printSchema' ]
*/
buildSchema
的新版本是什么?它的签名是什么?