feat: 添加搜索功能 #10

Manually merged
remilia merged 8 commits from dev/search into master 2025-09-16 16:15:43 +08:00
40 changed files with 13700 additions and 4234 deletions
Showing only changes of commit 79d2d2e800 - Show all commits

View File

@ -77,11 +77,11 @@ const handleSearch = () => {
const trimmed = searchQuery.value.trim();
if (!trimmed) return;
navigateTo({
path: localePath('/search'),
path: localePath("/search"),
query: {
query: trimmed
}
})
query: trimmed,
},
});
searchQuery.value = "";
};

View File

@ -41,7 +41,7 @@ export const useMeilisearch = () => {
let meiliClient: MeiliSearch | null = null;
const ensureClient = () => {
if(meiliClient) return meiliClient;
if (meiliClient) return meiliClient;
const host = runtimeConfig.public?.meili?.host;
if (!host) {
@ -86,7 +86,8 @@ export const useMeilisearch = () => {
indexUid,
response: {
hits: safeResponse.hits,
estimatedTotalHits: safeResponse.estimatedTotalHits ?? safeResponse.hits.length,
estimatedTotalHits:
safeResponse.estimatedTotalHits ?? safeResponse.hits.length,
processingTimeMs: safeResponse.processingTimeMs ?? 0,
query: safeResponse.query,
},
@ -98,7 +99,10 @@ export const useMeilisearch = () => {
const settled = await Promise.allSettled(requests);
settled
.filter((result): result is PromiseRejectedResult => result.status === "rejected")
.filter(
(result): result is PromiseRejectedResult =>
result.status === "rejected"
)
.forEach((result) => {
console.error("Meilisearch query failed", result.reason);
});