Expand description
搜索面板(⌘K) 搜索面板(⌘K):前台全站的即时跳转。
页头「搜索 ⌘K」与全局快捷键打开同一个面板。文章来自 suggest_posts(标题、
摘要、标签,最多 8 条),标签与页面在浏览器内过滤。空查询显示最近搜索与常用
跳转;有查询时按「文章 · 标签 · 跳转」分组,命中词用 <mark> 标出。
样式见 styles/components/palette.css;行为细节见 docs/v1.0-重设计方案.md「搜索面板」。
公共状态、输入与对话框结构见 crate::components::palette。
分包:SearchPalette 外壳(打开状态、快捷键、最近搜索与标签的预取)留在主包;
面板主体(分组构建、条目映射、选中动作与 PaletteShell 视图)在
search_palette_body(#[leptos::lazy])里,首次打开面板时才加载分包。
Structs§
- Group 🔒
- Search
Data 🔒 - 外壳与分包主体共享的面板数据信号(全部是
Copy句柄)。 - Search
Palette Props - Props for the
SearchPalettecomponent.
Enums§
Constants§
- PAGES 🔒
- 可跳转的页面:标签与路径。
- RECENT_
LIMIT 🔒
Functions§
- Search
Palette - 搜索面板。挂在前台布局里一次,由
SearchPaletteHandle打开。 - build_
groups 🔒 - 按查询与范围组织面板内容。
posts为建议接口对当前查询的结果。 - entry 🔒
- 面板中的一行的展示内容。
- group_
limit 🔒 - 各组的条数上限:全部范围下文章 5、标签 3、跳转 3;单一范围 8。
- open_
in_ 🔒new_ tab - 在新标签页打开站内地址(仅 wasm)。
- page_
href 🔒 - 跳转页面的站内地址(
PAGES里的路径对应的Route)。 - read_
recents 🔒 - 读取最近搜索;存储不可用或内容损坏时返回
None(该组不显示)。 - remember 🔒
- 把查询记入最近搜索:去重、置顶、最多保留 5 条。
- scope_
count 🔒 - 有查询时各范围的命中数(用于范围标签)。
- search_
palette_ 🔒body - 面板主体:分组、条目、选中动作与对话框视图。分包函数,首次调用时加载分包。
- write_
recents 🔒