astro pagefind
v1.6.0
Astro 集成用于 Pagefind 静态站点搜索。
astro dev
模式下提供先前预先构建的搜索索引安装:
npm i astro-pagefind
将集成添加到 Astro 配置:
//astro.config.ts
import { defineConfig } from "astro/config" ;
import pagefind from "astro-pagefind" ;
export default defineConfig ( {
build : {
format : "file" ,
} ,
integrations : [ pagefind ( ) ] ,
} ) ;
在页面上添加搜索组件:
---
import Search from " astro-pagefind/components/Search " ;
---
< Search id = " search " className = " pagefind-ui " uiOptions = { { showImages: false } } />
有关使用示例,请参阅 Main.layout。
在 SSR 模式下,Astro 提供对 URL 查询参数的访问,这些参数可用于通过 prop 预填充搜索查询:
---
import Search from " astro-pagefind/components/Search " ;
export const prerender = false ;
const q = Astro . url . searchParams . get ( " q " ) ?? undefined ;
---
< Search query = { q } />
有关完整示例,请参阅 prefilled.astro。