【发布时间】:2017-09-19 12:14:19
【问题描述】:
我有两个具有以下关系的模型:
群组有很多 链接
所以基本上我的初始查询是 getAllGroups,它获取所有组及其链接。 我有一个简单地创建链接的突变,更新我的 UI 的最有效方法是什么?
目前我有:
export const withCreateLink = graphql(createLink, {
props({ownProps, mutate}) {
return {
createLink(url, description, group) {
return mutate({
variables: {
url,
description,
group
},
updateQueries: {
getAllGroups: (prev, {mutationResult}) => {
const newLink = mutationResult.data.createLink;
return update(prev, {
allGroups: {
links: {
$push: [newLink]
}
}
})
}
}
})
}
}
}
});
基本上我只想获取添加了链接的组,但我需要指定是哪个组。我该怎么办?
【问题讨论】:
-
所以你想添加一个特定组的链接?因为现在您将新链接添加到所有组
-
是的,但我想我已经想通了。我可以从我的道具接收组索引,然后在我的查询中使用该索引:allGroups: { [groupIndex]: { links: {...} }}。正确的?我将其添加为答案。感谢您的评论。
-
是的,看起来是正确的方法
标签: reactjs graphql apollo react-apollo