Typescript 类型';默认客户<;未知>';不可分配给类型';阿波罗客户<;对象>';

Typescript 类型';默认客户<;未知>';不可分配给类型';阿波罗客户<;对象>';,typescript,apollo,react-apollo,react-apollo-hooks,Typescript,Apollo,React Apollo,React Apollo Hooks,我正在尝试显式地向usemotation提供一个客户端。除了typescript似乎发现类型不匹配之外,一切都正常 类型“DefaultClient”不能分配给类型“ApolloClient”。 客户机与阿波罗照片中的客户机非常相似 我真正要做的就是导入客户端并将其作为一个选项提供给用户 import {useMutation} from '@apollo/react-hooks' import {client} from './client' const MY_QUERY = ` ...

我正在尝试显式地向
usemotation
提供一个客户端。除了typescript似乎发现类型不匹配之外,一切都正常

类型“DefaultClient”不能分配给类型“ApolloClient”。

客户机与阿波罗照片中的客户机非常相似

我真正要做的就是导入客户端并将其作为一个选项提供给用户

import {useMutation} from '@apollo/react-hooks'
import {client} from './client'

const MY_QUERY = `
  ...
`

const [myQuery] = useMutation(MY_QUERY, {
  client: client,
  onCompleted: () => {
    // do some stuff..
  }
})

使用变异似乎期待另一种类型,即推断的类型。如何解决此不匹配问题?

似乎您应该将
InMemoryCache
作为类型参数:

export const client=新客户端({
我试图理解这个参数是如何使用的,但我不太明白。老实说,空对象似乎也能正常工作:

export const client=新客户端({

但在读取源代码时,它似乎需要缓存类型。

两者似乎都不起作用。在这两种情况下,消息都不会消失。奇怪的是,我可以重现您的错误,当我使用这些类型时,它就会消失。我一定是做错了什么,它实际上起了作用。我的错
import {useMutation} from '@apollo/react-hooks'
import {client} from './client'

const MY_QUERY = `
  ...
`

const [myQuery] = useMutation(MY_QUERY, {
  client: client,
  onCompleted: () => {
    // do some stuff..
  }
})