reactjs - redux-toolkit prepareHeaders 不是一个函数
问题描述
我在使用此查询时遇到问题,它说这prepareHeaders
不是一个函数,但我将它添加为一个对象,您可以在下面的代码中看到:
const access_token = localStorage.getItem('rs_access_token');
// Define a service using a base URL and expected endpoints
export const lfApi = createApi({
reducerPath: 'lfApi',
baseQuery: fetchBaseQuery({
baseUrl: 'http://homestead.test/api/v1',
prepareHeaders: {
'Authorization': `Bearer ${access_token}`,
'Content-Type': 'application/json',
'Accept': 'application/json',
},
}),
endpoints: (builder) => ({
getUser: builder.query({
query: (params) => `user`,
}),
getAgent: builder.query({
query: (params) => `myagents/agents/${params}`,
}),
}),
});
// Export hooks for usage in functional components, which are
// auto-generated based on the defined endpoints
export const { useGetUserQuery } = lfApi;
export const { useGetAgentQuery } = lfApi;
解决方案
这是因为该prepareHeaders
属性 - 正如错误消息所说 - 接受一个函数,而不是一个对象。您可以从这里的示例中看到。
const baseQuery = fetchBaseQuery({
baseUrl: '/',
prepareHeaders: (headers, { getState }) => {
headers.set('Authorization', `Bearer ${access_token}`);
headers.set('Content-Type', 'application/json');
headers.set('Accept', 'application/json');
return headers
},
})
推荐阅读
- robotframework - 当网站中没有提供 ID/Xpath/Value 时,从 Robotframework 中的网站中识别 Dropdown 元素
- sass - 如何使用 Angular Material 7 实现两级应用布局?
- elasticsearch - 如何生成自定义 Auditbeat 字段?
- python - 如何将数据框的 pyspark 列中包含的 unicode 列表转换为浮点列表?
- laravel - Laravel - 检查数据库中是否存在字段的验证规则并且属于同一行的列设置为指定值
- javascript - className 的变量随 console.log() 返回,但在代码中返回引用错误
- cakephp - CakePHP 3.7 - 测试用例文件上传
- sql - 是否可以通过 oracle 中的选择查询将表名传递给 SQL 查询
- javascript - 从 Angular 应用程序路由创建页面预览
- javascript - node.js 令牌删除承诺