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-запроса, которые можно использовать для предварительного заполнения поискового запроса с помощью реквизита:
---
import Search from " astro-pagefind/components/Search " ;
export const prerender = false ;
const q = Astro . url . searchParams . get ( " q " ) ?? undefined ;
---
< Search query = { q } />
Полный пример см. в prefilled.astro.