مكونات واجهة المستخدم لـ React + Elasticsearch. إنشاء تطبيقات البحث باستخدام المكونات التعريفية.
التوثيق والتوضيح القابل للعب المتاحة هنا.
const MySearchComponent = ( ) => (
< Elasticsearch url = "http://example.org/search" >
< SearchBox id = "mainSearch" fields = { [ "title" ] } />
< Facet id = "actors" fields = { [ "actors" ] } />
< Facet id = "releasedYear" fields = { [ "releasedYear" ] } />
< Results
id = "results"
items = { data =>
// Map on result hits and display whatever you want.
data . map ( item => < MyCardItem key = { item . _id } source = { item . _source } /> )
}
/>
</ Elasticsearch >
) ; npm i react-elasticsearch
yarn add react-elasticsearch
يمكنك اختبار المكونات باستخدام Storybook (20+ أمثلة).
npm run storybook
بدأنا في بناء تجربة البحث لمنصة التراث الثقافي الفرنسي المفتوح مع ReactiveSearch ، وهي مكونات واجهة المستخدم المعروفة للبحث عن React. بعد بضعة أسابيع ، أدركنا أننا قضينا الكثير من الوقت في التغيير والاختراق في LIB ؛ لقد أعادنا كتابة كل مكونات تقريبًا. لقد فتحنا المشكلات وسحب الطلبات على المستودع ، لكن يبدو أن LIB كان عالقًا بعض الشيء في عملية إعادة الكتابة. اكتشفنا أننا بحاجة إلى lib بسيط يمكن تمديده بسهولة باستخدام واجهة برمجة تطبيقات مماثلة ، أنشأنا هذا. يحتوي هذا LIB على العديد من الميزات أقل من غيرها ، فهو ليس منافسًا لائقًا. ولكن نظرًا لأنه ساعدنا في بناء تجارب بحث ، فقد تم إصداره. أتمنى أن تساعدك!
مفتوح القضايا و PR هنا: https://github.com/betagouv/react-elasticsearch