Javascript 错误:";认购;在解析程序中定义,但不在架构中定义
index.jsJavascript 错误:";认购;在解析程序中定义,但不在架构中定义,javascript,facebook-graph-api,graph,web-deployment,yoga-x1,Javascript,Facebook Graph Api,Graph,Web Deployment,Yoga X1,index.js const {GraphQLServer, GrphQLServer, PubSub } = require('graphql-yoga'); const db = require('./db'); const Query = require('./resolvers/Query'); const Mutation = require('./resolvers/Mutation'); const subscription = require('./resolvers/Subst
const {GraphQLServer, GrphQLServer, PubSub } = require('graphql-yoga');
const db = require('./db');
const Query = require('./resolvers/Query');
const Mutation = require('./resolvers/Mutation');
const subscription = require('./resolvers/Substription')
const pubsub = new PubSub();
const typeDefs=`
type Query{
me:User!
signlevalue(name:String):String
sum(marks:[Int]):Int!
user:[User]
}
type Mutation{
createUser(id:ID,name:String,email:String):[User]
}
type User{
id:ID
name:String
email:String
age:Int
}
type Subscription{
count:Int
}
`
const resolvers={
Query,
Mutation,
subscription
}
const server= new GraphQLServer({
typeDefs,
resolvers,
context:{
db,
pubsub
}
})
server.start(()=>{
console.log('servr is running on port 4000');
})
subscription.js
const Subscription={
count:{
subscribe(parent,args,{pubsub},info){
let count=0;
setInterval(() => {
count++;
pubsub.publish('count',{
count:count
})
}, 1000);
return pubsub.asynsIterateor('count')
}
}
}
module.exports = Subscription;
package.json
{
"name": "sql",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "nodemon src/index.js --ext js,graphql --exec babel-node",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"babel-cli": "^6.26.0",
"babel-preset-env": "^1.7.0",
"express": "^4.17.1",
"express-graphql": "^0.11.0",
"graphql": "^15.3.0",
"graphql-yoga": "^1.18.3",
"lodash": "^4.17.20"
}
}
我是graphQL word中的一个大人物,我不知道这里出了什么问题,因为我在模式中定义了subsection,但它仍然给我错误“subscription”,在解析器中定义了subscription,但在模式中没有。我搜索了它,但没有找到任何解决方案。我正在遵循udemy的andrew mead课程。您的导入名称是“subscription”(小s)在类型定义中,您使用的是“订阅”(大s)
用这个
const Subscription = require('./resolvers/Substription')