开发者问题收集

TypeError:Object(…)不是 React 中的函数

2021-10-11
2669

src/Service/Post.js

import { createApi, fetchBaseQuery } from "@reduxjs/toolkit/dist/query"
    
    export const postAPi=createApi({
        reducerPath:'postApi',
        baseQuery:fetchBaseQuery({
            baseUrl:"https://jsonplaceholder.typicode.com/",
        }),
        endpoints:(builder)=>({
            getAllPost:builder.query({
                query:()=>({
                    url:'posts',
                    method:'GET'
                })
            })
        })
    })
    export const { useGetAllPostQuery }=postAPi

src/App.js

import { useGetAllPostQuery } from './Service/Post'

export default function App() {
  const data=useGetAllPostQuery()
  return (
    <div>
        <h1>
          React App
        </h1>
    </div>
  )
}

我使用 RTK 查询获取数据,因此,当我尝试在我的 app.js 反应组件中访问 useGetAllPostQuery 时,它在浏览器中看到错误 TypeError:Object(...) 不是函数,因此,任何人都可以建议如何解决此错误

2个回答

您未导入 query/react 端点。常规 query 端点不会创建钩子。

import { createApi, fetchBaseQuery } from "@reduxjs/toolkit/query/react"
phry
2021-10-11

输入错误也会导致错误。 请小心自动生成的钩子。

export const { use_____Query } = ~~APi
goodhyun
2022-01-13