gpt4 book ai didi

javascript - GraphQL 抛出语法错误

转载 作者:太空宇宙 更新时间:2023-11-04 01:28:52 24 4
gpt4 key购买 nike

我正在开发 GraphQL Node 教程,目前已完成第 7 步。

https://www.howtographql.com/graphql-js/7-subscriptions/

我的 datamodel.prisma 文件中的这段代码出现了一些语法错误:

directive @id on FIELD_DEFINITION
directive @unique on FIELD_DEFINITION
directive @createdAt on FIELD_DEFINITION
scalar DateTime

type Link {
id: ID! @id
createdAt: DateTime! @createdAt
description: String!
url: String!
postedBy: User
votes: [Vote!]!
}

type User {
id: ID! @id
name: String!
email: String! @unique
password: String!
links: [Link!]!
votes: [Vote!]!
}

type Vote {
id: ID! @id
link: Link!
user: User!
}

但我仍然收到'User'类型[@6:1]尝试重新定义现有的'User'类型[@15:5]'Link'类型[@24:1]尝试重新定义现有的'Link'类型[@6:5]

我也不确定我是否正确声明了指令标量,因为官方教程中缺少这一点。

任何人都可以就如何解决这些问题提供任何建议吗?

架构.graphql:

type Query {
info: String!
feed(filter: String, skip: Int, first: Int, orderBy: LinkOrderByInput): Feed!
}

type Feed {
links: [Link!]!
count: Int!
}

type AuthPayload {
token: String
user: User
}

type User {
id: ID!
name: String!
email: String!
links: [Link!]!
}

type Vote {
id: ID!
link: Link!
user: User!
}

type Link {
id: ID!
description: String!
url: String!
postedBy: User
votes: [Vote!]!
}

type Subscription {
newLink: Link
newVote: Vote
}

type Mutation {
post(url: String!, description: String!): Link!
signup(email: String!, password: String!, name: String!): AuthPayload
login(email: String!, password: String!): AuthPayload
vote(linkId: ID!): Vote
}

enum LinkOrderByInput {
description_ASC
description_DESC
url_ASC
url_DESC
createdAt_ASC
createdAt_DESC
}

最佳答案

今天早上我遇到了同样的错误,我感觉这与缓存有关。当我重命名变量时它就消失了。在您的情况下,将所有“Link”定义/引用更改为“LinkTwo”,然后查看错误是否消失。与“User”相同...将其更改为“UserTwo”。如果是这样,也许您可​​以稍后将它们重新命名。

关于javascript - GraphQL 抛出语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56666662/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com