我有一个如下所示的graphql查询:
userInfo (id: userId) {
name
email
address {
street
country
}
}
因此,名称和电子邮件将由名为详细信息的其余endpoint解析,但是地址字段需要由另一个名为地址的其余endpoint解析。>rest终结点还需要在userInfo
中传递的userId
(因为我的rest服务需要该字段)。我不确定,在这种情况下,我如何设计我的解析器?
同样,一个字段一旦解析,是否可以将数据发送到另一个字段?这在grapqhql中可能吗?
我想补充一下(到@daniel answer),您可以在查询中明确传递这个id(w/oaddress
resolver changes)。
userInfo (id: userId) {
name
email
address (userID: userId) {
street
country
}
}
为了使(address
resolver)通用,我们可以使用两个参数源:
async (parent, args, context, info) => {
// `parent` (user) can contain `id` property
return getAddress(args.userID ? args.userID : parent.id)
}
因为您应该可以像RESTAPI一样只查询地址(对于给定的用户ID
)。
在GraphQL中,每个字段都被称为解析为特定值。在GraphQL中。js,这个值要么是解析程序返回的值,要么,如果解析程序返回promise,则是该promise解析为的值。此值作为第一个参数传递给每个子字段的解析器。
实际上,这意味着即使您的类型有特定的字段,并且您返回的对象应该与这些字段匹配,它也可以包含任意数量的附加属性。
例如,您的userInfo
解析器可以是这样的:
async (parent, args, context, info) => {
const { name, email } = await getDetails(args.id)
return {
name
email
id: args.id,
}
}
即使您没有id
字段,我们仍然可以在返回的对象中包含该字段。这样,我们可以将一些附加信息(如参数)向下传递给任何子字段的解析程序。然后,在您的地址中
解析器:
async (parent, args, context, info) => {
// `parent` contains `name`, `email` and `id` properties
return getAddress(parent.id)
}
我试图将一些信息从子项中的输入字段传递给父项。 到目前为止我所掌握的是: 34 this.setstate({searchstring:event.target.value},()=>{ >35 this.props.onchild(this.state.SearchString); 希望有人能帮忙。顺便说一句,我是个小人...
我50%的希望渺茫:P.我(一开始)试图从一个线程的代码中更新GUI,但得到了NullException。在阅读了一段时间后,我了解到线程淹没了JavaFX应用程序窗口,为了从线程更新GUI,我需要使用以下代码: 所以我确实使用了这个代码,它确实允许我编辑我的主类的图形用户界面。不过,我的问题很简单。= 如何将父级的public void run()中的参数传递给这个?。例如,字符串tmpStri
问题内容: 我想将值传递给javascript。如果可能的话,我该怎么办?如何在后备bean中接收它们? 问题答案:
问题内容: 我们已经设置了一些参数来在Jenkins中执行构建(使用简单的“参数化构建”设置)。作业被设置为Maven测试。有没有办法以编程方式将这些参数传递到我们的Java代码中?我们需要基于通过Jenkins设置的参数来执行某些更新功能。 问题答案: 是的,您可以通过Maven执行将Jenkins参数传递给Java代码,如下所示: 请注意, $ JOB_PARAM_1 将捕获Jenkins上设
是否可以将输入参数传递到游标SELECT语句WHERE子句中? 由于某种原因,我想它不起作用了。 以下是存储过程:
问题内容: 我正在尝试对与php数组中的值匹配的行进行sql查询。 本质上我有一个像 并希望执行单个SQL查询以获取与该数组匹配的行 是否有捷径可寻?还是我必须手动构造查询字符串? 问题答案: 使用爆破功能,即