Graphql 中继如何写入outputFields、getFatQuery、getConfigs以创建新项

Graphql 中继如何写入outputFields、getFatQuery、getConfigs以创建新项,graphql,relayjs,Graphql,Relayjs,如何编写outputFields,getFatQuery,getConfigs以创建新项目和更新项目列表 请看一看或者 问题是 getFatQuery(){ 返回继电器` ??? `; } getConfigs(){ 返回[??]; } 输出字段:{ ??? }, 架构中的输出字段构成将从schema.js文件生成的GraphQL类型CreateActivityPayload。突变与常规查询类似,但有副作用。在outputFields中,您可以决定什么是可查询的。因为你的应用程序中只有你的商店

如何编写
outputFields
getFatQuery
getConfigs
以创建新项目和更新项目列表
请看一看或者

问题是

getFatQuery(){
返回继电器`
???
`;
}
getConfigs(){
返回[??];
}
输出字段:{
???
},

架构中的
输出字段
构成将从schema.js文件生成的GraphQL类型
CreateActivityPayload
。突变与常规查询类似,但有副作用。在
outputFields
中,您可以决定什么是可查询的。因为你的应用程序中只有你的商店会因为这种变异而改变,所以我们可以从这个开始

输出字段:{
商店:{
类型:storeType,
解析:()=>存储,
},
}
fat查询对这些输出字段进行操作。在这里,你告诉中继什么可能会因为这种突变而改变。添加活动可能会更改以下字段:

getFatQuery(){
返回继电器`
CreateActivityPayload@relay上的片段(模式:true){
贮藏{
活动
}
}
`;
}
最后,配置告诉Relay在获取查询时,或者即使需要进行查询,该如何处理查询。在这里,您希望在创建新活动后更新字段。使用
字段\u CHANGE
配置通知中继更新您的存储

getConfigs(){
返回[{
键入:“字段\u更改”,
小岛屿发展中国家:{
store:this.props.storeId,
},
}];
}

查看更多信息:

注意,您的存储应该公开一个ID,否则您必须进入客户端存储才能获取它:
RelayStore.getStoreData().getCachedStore().getDataID('store')
,如果我有一个
查看器,其中包含
post
posts
,我会对
post
进行变异,我需要让它的
输出字段
返回一个全新的
查看器
,还是让它只返回更新的/new
帖子
?如果我只返回
post
,我如何将它映射到
getFatQuery
中可能更改的所有内容?只要
post
有一个id,并且您可以在FooPayload类型(突变返回的类型)上使用它,您就可以使用
字段\u change
更新该记录。中继将更新该
post
记录所依赖的任何UI。