【发布时间】:2021-09-24 15:28:54
【问题描述】:
我尝试使用带有 Apollo 客户端的 Next.js 设置 Shopify 商店。我只是想知道每当我将新商品放入购物车(在另一个组件中)时,让购物车组件从购物车中重新获取商品的最简单方法是什么。有问题的两个查询如下:
query ($id: ID!) {
node(id: $id) {
id
... on Checkout {
lineItems(first: 250) {
edges {
node {
id
title
quantity
}
}
}
}
}
}
在购物车组件中和
mutation checkoutLineItemsAdd(
$lineItems: [CheckoutLineItemInput!]!
$checkoutId: ID!
) {
checkoutLineItemsAdd(lineItems: $lineItems, checkoutId: $checkoutId) {
checkout {
id
}
}
}
在产品组件中。
阿波罗文档说
如果突变更新了单个现有实体,Apollo 客户端可以在突变返回时自动更新其缓存中该实体的值。为此,突变必须返回被修改实体的 id,以及被修改字段的值。方便的是,突变在 Apollo 客户端中默认执行此操作。
我想知道结帐 ID 是否可以以某种方式用于在我的情况下启动此行为?
【问题讨论】:
标签: reactjs next.js apollo-client shopify-api