Я использую AWS AppSync
с Apollo
.Пока все хорошо, за исключением того, что я только что понял, что все мои мутации не работают должным образом:
В devtool я могу видеть возвращенные данные, такие как:
{
"data": {
"getProduct": {
"productId": "xxxxxxxxxxxxxxxxxxx",
"title": "my title",
"slug": "my slug"
}
}
}
...но когда я пытаюсь console.log эти же данные, я получаю нулевое значение.Это происходит только с моими мутациями (запросы работают нормально).
{
"data": {
"getProduct": null
}
}
Вот что я делаю:
addProduct(variables): Observable<Product> {
return this.apollo.mutate({
mutation: gql`
mutation addProduct($product: AddProductInput) {
addProduct(product: $product) {
productId
title
slug
}
}
`,
variables
}).pipe(
tap(console.log)
)
}
Через несколько часов, пытаясь найти решениеЯ пытался заменить Apollo
на AWS Amplify
, и это сработало, как и ожидалось.
Дело в том, что я не хочу использовать AWS Amplify
.Я не могу использовать фрагменты / офлайн / оптимистичный пользовательский интерфейс / fetchPolicy ... и они мне действительно нужны.
Поэтому мне интересно, должно ли это быть так или я что-то здесь упускаю?