Необработанное отклонение (TypeError): невозможно прочитать свойство 'refetch' из неопределенного - GraphQL - PullRequest
3 голосов
/ 27 февраля 2020

Сегодня я столкнулся с проблемой с GraphQL в моем проекте React. js. То, что я пытался сделать, это повторить запрос после завершения мутации. Моя кодовая база, как показано ниже

const getUserTeamQuery = useQuery(getUserTeam(usersFragment))
const data = get(getUserTeamQuery, 'data.getUserTeam')

const [updateUser] = useMutation(updateUserMutation(usersFragment), {
  onCompleted: () => {
    getUserTeamQuery.refetch()
  }
})

const updateTeam = async () => {
  await updateUser({ variables: { input: { pullTeam } } })
}

Я также опубликовал эту проблему в Github: https://github.com/apollographql/react-apollo/issues/3862

ЗАВИСИМОСТЬ

"@apollo/react-hooks": "^3.1.3",
"apollo-cache-inmemory": "^1.6.3",
"apollo-client": "^2.6.4",
"apollo-link": "^1.2.13",
"apollo-link-context": "^1.0.19",
"apollo-link-error": "^1.1.12",
"apollo-link-http": "^1.5.16",
"apollo-upload-client": "^11.0.0",
"react": "^16.10.2",
"react-apollo": "^3.1.3",

Есть ли какое-нибудь решение для устранения проблемы?

1 Ответ

1 голос
/ 27 февраля 2020

Вот как я исправил проблему на моей стороне.

const [updateUser] = useMutation(updateUserMutation(usersFragment), {
  refetchQueries: [`getUserTeam`]
})

Вы должны использовать refetchQueries вместо onCompleted в параметрах useMutation.

Должно работать!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...