You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RTK Query无法设置Tag ID问题求助

解决RTK Query中Timeseries标签ID异常问题

问题分析

你的代码中存在两处可能导致标签ID异常的问题:

  • getDashboardById端点的泛型定义错误,会干扰TypeScript的类型推断,进而影响其他端点的参数解析
  • 需确认arg.datasource.assetId的访问路径是否正确,以及调用查询时传入的参数结构是否符合预期

修复步骤

1. 修正getDashboardById的泛型错误

当前getDashboardById的泛型第二个参数为void,但该端点实际接收一个id参数,这会导致类型推断混乱,可能间接影响getTimeseriesFromTo的参数解析:

getDashboardById: builder.query<Dashboard, number>({ // 将void改为number
    query: (id) => `/vsapi/Dashboard/${id}`,
    providesTags: (result, error, arg) => [
        { type: 'Dashboard', id: Number(arg) },
    ]
}),

2. 验证并确保arg.datasource.assetId的正确性

  • 检查InsightshubDataSource类型定义,确认其包含assetId属性
  • 在调用useGetTimeseriesFromToQuery时,确保传入的datasource对象存在有效的assetId值

3. 添加调试日志确认参数结构

在getTimeseriesFromTo的providesTags中添加日志,排查参数解析问题:

providesTags: (result, error, arg) => {
    console.log('Timeseries查询参数:', arg);
    console.log('assetId取值:', arg.datasource?.assetId);
    return [{
        type: 'Timeseries',
        id: String(arg.datasource.assetId)
    }]
},

4. 升级Redux Toolkit版本

如果上述步骤无效,尝试升级@reduxjs/toolkit到最新稳定版本,避免旧版本的潜在bug:

npm install @reduxjs/toolkit@latest
# 或
yarn add @reduxjs/toolkit@latest

内容的提问来源于stack exchange,提问作者torgeir tislevoll

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 12:03:36