【问题标题】:RTK Query returns partial data when receiving URL param from Redux stateRTK Query 从 Redux 状态接收 URL 参数时返回部分数据
【发布时间】:2022-08-06 19:44:29
【问题描述】:

我希望将成功存储在 Redux 状态中的 ID 值传递给 RTK 查询,以实现动态获取行为。

但是,当我通过状态对象时,我只收到一个不同长度的数组的部分响应(有时没有对象,有时两个,偶尔是整个响应)。

src/features/api/apiPayrollEntries.ts

// READ All Payroll Entries by Payroll ID
getAllPayrollEntriesByPayrollId: builder.query<PayrollEntry[], string>({
  query: (payrollId) => `/payroll-entries/payroll/${payrollId}`,
  providesTags: [\"PayrollEntry\"],
}),

PayrollEntries.tsx

const PayrollEntries: FC = () => {
  const provisionedPayrollId: string = useAppSelector(
    (state: any) => state.provisionedPayroll.id
  );

  const { data: dataPayrollPayrollEntries } =
    useGetAllPayrollEntriesByPayrollIdQuery(provisionedPayrollId);

  console.log(provisionedPayrollId);
  // => \"ed7c6cc9-8835-4974-ac0d-4cf54e917898\"

  console.log(dataPayrollPayrollEntries);
  // => returns array of varying (0-all) results

  // const { data: dataPayrollPayrollEntries } =
  // useGetAllPayrollEntriesByPayrollIdQuery(
  //   \"ed7c6cc9-8835-4974-ac0d-4cf54e917898\"
  // );
  // => reliably returns all results
}

我直觉在从状态获取和调用/完成查询之间存在某种超时问题,但我找不到解决这个问题的模式。我还尝试实现useEffect() 以确保该州的 ID 值可用,但没有成功。

我已经查看了Constructing a Dynamic Base URL Using Redux State,但不确定这是否是正确的方法?感谢您对澄清我的理解的任何支持。提前致谢。

    标签: javascript reactjs redux redux-toolkit rtk-query


    【解决方案1】:

    我通过了解我的前端在完成服务器端的过程之前正在竞速解决了这个问题。因此,日期的部分返回——服务器只返回前端请求时可用的数据。

    我通过将“完整”对象传递给前端来启用前端路由器重定向的操作来解决。

    【讨论】:

      猜你喜欢
      • 2021-09-10
      • 2022-06-10
      • 2021-10-15
      • 2023-01-15
      • 2022-10-16
      • 1970-01-01
      • 1970-01-01
      • 2017-03-26
      • 2018-04-08
      相关资源
      最近更新 更多