refactor(frontend): optimize network queries and improve code readability (#919)

* refactor(frontend): optimize network queries and improve code readability
- useThreadStream: Add useStream with fetchStateHistory: {limit: 1}
- useThreads: Add select fields and disable refetchOnWindowFocus
- useModels: Disable refetchOnWindowFocus
- ChatPage and titleOfThread: Improve thread title logic
- loadModels: Refactor code for better readability

* fix: address the review comments of Copilot

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
Zhiyunyao
2026-03-02 20:35:46 +08:00
committed by GitHub
parent a2f91c7594
commit 72df234636
5 changed files with 15 additions and 29 deletions

View File

@@ -3,7 +3,7 @@ import { getBackendBaseURL } from "../config";
import type { Model } from "./types";
export async function loadModels() {
const res = fetch(`${getBackendBaseURL()}/api/models`);
const { models } = (await (await res).json()) as { models: Model[] };
const res = await fetch(`${getBackendBaseURL()}/api/models`);
const { models } = (await res.json()) as { models: Model[] };
return models;
}

View File

@@ -7,6 +7,7 @@ export function useModels({ enabled = true }: { enabled?: boolean } = {}) {
queryKey: ["models"],
queryFn: () => loadModels(),
enabled,
refetchOnWindowFocus: false,
});
return { models: data ?? [], isLoading, error };
}