diff --git a/src/components/TitleBar/index.tsx b/src/components/TitleBar/index.tsx index 9a778db..2621f27 100644 --- a/src/components/TitleBar/index.tsx +++ b/src/components/TitleBar/index.tsx @@ -18,7 +18,17 @@ const TitleBar: Component = (props) => { const handleSearch = () => { if (searchInput?.value) { - navigate(`/search?q=${encodeURIComponent(searchInput.value)}`); + if (searchInput.value.startsWith('spk://')) { + // 处理 spk:// 协议 + const path = searchInput.value.replace('spk://', ''); + const parts = path.split('/'); + const category = parts[parts.length - 2]; + const pkgname = parts[parts.length - 1]; + navigate(`/app/${category}/${pkgname}`); + } else { + // 处理普通搜索 + navigate(`/search?q=${encodeURIComponent(searchInput.value)}`); + } searchInput.value = ""; } };