我在GraphQL Playground中有一个可以工作的查询,我正试图使用Apollo使其工作。我似乎无法将变量正确地传递给查询。
这是我的代码:
public render() {
const CONVERSATION = gql`
query GetConversation(
$conversationId: ConversationWhereUniqueInput!
) {
conversation(where: $conversationId) {
id
title
}
}
`
const conversationId: any = this.props.conversation
console.log(conversationId) // works.
return (
<ApolloProvider client={this.client}>
<div>
<Query query={CONVERSATION} variables={{ conversationId }}>
{({ loading, error, data }) => {
if (error) {
return <div>${JSON.stringify(error)}</div>
}
if (loading) {
return <div>Loading...</div>
}
return <div>{JSON.stringify(data)}</div>
}}
</Query>
</div>
</ApolloProvider>
)
}
[GraphQL错误]:消息:变量“$ConversationID”获得无效值“CJRTFAGWC00BQ0A300NJZ594R”;类型ConversationWhereUniqueInput应为对象。,位置:[object object],路径:未定义
我认为通过将变量作为variables={{conversationId}}
传递,我实际上是按照请求传递了一个对象。我做错了什么?
编辑本杰帮我找到了哪里出了问题。
我不得不将const conversationId:any=this.props.conversation
更改为const conversationId:any={this.props.conversation}
您正在传递变量:
{
"conversationId": "cjrtfagwc00bq0a300njz594r"
}
这很好。问题是,您定义的查询声明ConversationID
变量(您已经给出了字符串(或ID
?)值“CJRTFAGWC00BQ0A300NJZ594R”
)应该是ConversationWhereUniqueInput
(它是输入对象):
$conversationId: ConversationWhereUniqueInput!
这两种类型(id
和ConversationWhereUniqueInput
)不兼容。
给定变量命名,我怀疑您希望更改GraphQL查询,以便它将conversationID
属性作为where
参数的一部分传递:
query GetConversation(
$conversationId: ID!
) {
conversation(where: {conversationId: $conversationId}) {
id
title
}
}
问题内容: 有没有办法从Java通用类的类型变量中获取Class对象?像这样: 此类型信息在编译时可用,因此不受类型擦除的影响,因此,从理论上讲,应该有一种方法来实现此目的。是否存在? 问题答案: 这有效:
我有2种类型的类型类,其中一种类型包含另一种类型 我想这样称呼我的类型类: 但这行不通。 错误:(34,23)找不到参数e的隐式值:com.playground.Valides[com.playground.MyModel1,model.version.type]val v=隐式[Valides[MyModel1,model.version.type]]错误:(34,23)没有足够的隐式方法参数:
问题内容: 我设法同时使用JSON和plist编码和解码,但是只能通过直接在特定对象上调用encoding / decode函数来实现。 例如: 这很好,没有问题。 但是,我试图获得一个仅接受协议一致性作为类型并保存该对象的函数。 这将导致以下错误: 无法使用类型为“(可编码)”的参数列表调用“编码” 看一下encoding函数的定义,似乎它应该能够接受,除非是我不知道的某种奇怪的类型。 问题答案
问题内容: 除了Swift,我还有这个问题。如何Type在泛型中使用变量? 我尝试了这个: This didn’t work either: 有没有办法做到这一点?我感觉到Swift只是不支持 它,并且给了我一些模棱两可的错误消息。 编辑:这是一个更复杂的示例,其中无法 使用通用函数标头来解决问题。当然,这没有任何意义, 但是我在代码中的某处合理地使用了这种功能 ,宁愿发布一个干净的示例而不是我的
我是graphql世界的新手,所以这可能是一个非常简单的问题,抱歉 我正在使用图形ql-compose-mongoose生成我的图形ql模式,这是我的猫鼬模式: 如果我尝试以下突变,它的工作正常 并返回此内容(以防查看响应可能会有所帮助) 现在,如果我尝试将附件传递给apollo,我不知道该怎么做,我不知道该提供哪种类型(附件不是正确的类型): 因此,搜索正确的类型,我对我的对象进行了内省,问题是
我正在学习Apollo和graphQL,并将其集成到我的一个项目中。到目前为止一切正常,但现在我正在尝试一些突变,我正在努力处理输入类型和查询类型。我觉得事情比实际情况要复杂得多,因此我正在寻求如何处理我的情况的建议。我在网上找到的示例都是非常基本的模式,但现实总是更加复杂,因为我的模式非常大,如下所示(我只复制一部分): 然后定义输入和负载,依此类推... 为此,我需要一个变异来保存“计算”,因