【发布时间】:2022-10-08 20:32:09
【问题描述】:
我有一个像这样的子组件:
import { skipToken } from "@reduxjs/toolkit/dist/query";
import moment from "moment";
import {
useFetchAccountQuery,
useFetchTransactionsQuery,
} from "./accountApiSlice";
const TransactionsTable = () => {
const { data: accountData } = useFetchAccountQuery();
const changesSince: string = moment().subtract(7, "d").toISOString();
let params = {
accountId: accountData?.accountId,
categoryId: accountData?.defaultCategoryId,
changesSince,
};
const paramsAreGood: boolean = params.accountId && params.categoryId ? true : false;
const { data: transactions, isSuccess: transactionsSuccess } = useFetchTransactionsQuery(paramsAreGood ? params : skipToken);
return (
<>
{transactionsSuccess && (
<div>
<h1>Number of transactions: {transactions?.length}</h1>
</div>
)}
</>
);
};
export default TransactionsTable;
我正在做两个查询,然后使用第一个查询中的accountId 和categoryId 传递给第二个查询,以便我可以进行事务查询并获取数据。
在 Chrome 的“网络”选项卡中,我可以看到我的 useFetchTransactionsQuery() 触发并且我获取了数据。
但是,我的组件仍然空白,我没有得到:
<h1>Number of transactions: <some number></h1>
这是 Redux Dev Tools 的截图:
我错过了什么?
【问题讨论】:
标签: reactjs typescript redux redux-toolkit