javascript - 类型错误:queryClient.defaultQueryObserverOptions 不是函数

标签 javascript reactjs typeerror react-query

我正在使用 React Query 并尝试从内联 JSON 文件获取数据(用户)。

我已经使用 npm React-query 和 React-query-devtools 安装了它,并且只有 2 个文件。

App.js:

import { QueryClient, QueryClientProvider } from 'react-query';
import { ReactQueryDevtools } from 'react-query-devtools';
import Users from './Users';

function App() {
  return (
    <div className="App">
      <QueryClientProvider client={QueryClient}>
        <Users />
        <ReactQueryDevtools initialIsOpen />
      </QueryClientProvider>
    </div>
  );
}

export default App;

Users.js:

import React from 'react'
import { useQuery } from 'react-query';

const Users = () => {
    const { isLoading, isError, data, error } = useQuery('test', () => (
        fetch('https://jsonplaceholder.typicode.com/users').then((res) => res.json())
    ));
    return (
        <div>
            {isLoading ? <h2>Chargement...</h2> : null}
            {isError ? <h2>Une erreur est survenue : {error.message}</h2> : null}

            <ul>
                {data.map((user) => (
                    <li key={user.id}>{user.name}</li>
                ))}
            </ul>
        </div>
    )
}

export default Users

我无法解决此错误:

TypeError: queryClient.defaultQueryObserverOptions is not a function

最佳答案

您应该将 QueryClient 实例用于 cleint,而不是直接使用 QueryClient

根据 docs

import { QueryClient, QueryClientProvider } from 'react-query';
import { ReactQueryDevtools } from 'react-query-devtools';
import Users from './Users';

// Create a client
const queryClient = new QueryClient() // Instance of QueryClient

function App() {
  return (
    <div className="App">
      <QueryClientProvider client={queryClient}> // <-- here
        <Users />
        <ReactQueryDevtools initialIsOpen />
      </QueryClientProvider>
    </div>
  );
}

export default App;

关于javascript - 类型错误:queryClient.defaultQueryObserverOptions 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65626311/

相关文章:

javascript - 我可以制作一个共享的reactjs验证组件吗?

javascript - json 输入 react 意外结束

javascript - 类型错误:无法读取未定义的属性 'Eligible'

typescript - TypeError: book.isEqual 不是一个函数

python - Pytest 抛出 typerror : positional arguments missing

javascript - 表格出现在我的下拉菜单前面

javascript - 扩展 Json 声明

javascript - JQuery如何知道所有失去焦点的选择

javascript - 如何在更改事件中获取复选框的数据元素

reactjs - 如何在 Material UI-5 的 styled() 中同时传递主题和 Prop ?