修复板块切换数据合并:行业/概念使用独立 useQuery 隔离数据
This commit is contained in:
+13
-3
@@ -23,12 +23,22 @@ function SectorsPage() {
|
||||
const [sortKey, setSortKey] = useState<SortKey>("mainNetInflow");
|
||||
const [asc, setAsc] = useState(true);
|
||||
|
||||
const { data = [], isLoading, isFetching, refetch } = useQuery({
|
||||
queryKey: ["sectors", tab],
|
||||
queryFn: ({ signal }) => fetchSectors(tab, signal),
|
||||
// 行业 / 概念 各自独立的 Query,数据完全隔离,杜绝来回切换时的合并
|
||||
const industryQ = useQuery({
|
||||
queryKey: ["sectors", "industry"],
|
||||
queryFn: ({ signal }) => fetchSectors("industry", signal),
|
||||
staleTime: 30_000,
|
||||
retry: false,
|
||||
});
|
||||
const conceptQ = useQuery({
|
||||
queryKey: ["sectors", "concept"],
|
||||
queryFn: ({ signal }) => fetchSectors("concept", signal),
|
||||
staleTime: 30_000,
|
||||
retry: false,
|
||||
});
|
||||
|
||||
const { data = [], isLoading, isFetching, refetch } =
|
||||
tab === "industry" ? industryQ : conceptQ;
|
||||
|
||||
const sorted = useMemo(() => {
|
||||
const dir = asc ? 1 : -1;
|
||||
|
||||
Reference in New Issue
Block a user