Shopify: получить userErrors из checkoutLineItemsReplace Mutation
У меня есть эта мутация, и я пытаюсь получить доступ к userErrors, но я не могу получить код или поле, а сообщение - единственное, что я могу получить, или я что-то делаю не так? Мутация работает, потому что удаляет продукты, но когда возникает какая-то ошибка, мне нужно перейти к коду или полю, чтобы выполнить определенное действие.
export const ITEM_REMOVED = gql`
mutation checkoutLineItemsReplace($lineItems: [CheckoutLineItemInput!] !, $checkoutId: ID!) {
checkoutLineItemsReplace(lineItems: $lineItems, checkoutId: $checkoutId) {
userErrors {
code
field
message
}
checkout {
...CheckoutFragment
}
}
}
${CHECKOUT_FRAGMENT}
`
const [mutationItemRemoved] = useMutation(ITEM_REMOVED)
// Item removed
const itemRemoved = (lineItems) => {
mutationItemRemoved({
variables: {
checkoutId: props.checkout.id,
lineItems,
},
}).then(r => {
console.log(r.data.checkoutLineItemsReplace.checkout)
props.updateCheckout(r.data.checkoutLineItemsReplace.checkout)
}).catch(error => {
console.log(error.code) // undefined
console.log(error.field) // undefined
console.log(error.message)
})
}
1 ответ
Я почти уверен, что Shopify не реализовал
code
вернуться. Они вернут код на
errors
которые включают расширения. Но
userErrors
кажется только вернуться и
message
, а также
field
часто пусто.