ホームページ >ウェブフロントエンド >jsチュートリアル >React と Elasticsearch を使用して効率的な全文検索を実現する方法
React と Elasticsearch を使用して効率的な全文検索を実現する方法
はじめに:
情報爆発時代の到来により、全文検索が必要になります。大量の情報を効率的に取得し、管理する方法となっています。 React と Elasticsearch はどちらも現在非常に人気のあるテクノロジーであり、それらを組み合わせることで効率的な全文検索機能を実現できます。この記事では、React と Elasticsearch を使用して全文検索を実装する方法を詳しく紹介し、具体的なコード例を示します。
まず、Elasticsearch をインストールして構成する必要があります。 Elasticsearch 公式 Web サイト (https://www.elastic.co/cn/downloads/elasticsearch) にアクセスして、オペレーティング システムに適したインストール パッケージをダウンロードし、公式ドキュメントに従ってインストールおよび設定できます。完了したら、Elasticsearch サービスを開始します。
始める前に、React プロジェクトを作成する必要があります。コマンド ラインを開き、次のコマンドを実行します。
npx create-react-app search-demo cd search-demo npm start
この時点で、新しい React プロジェクトが作成され、開始されています。
React プロジェクトのルート ディレクトリで、次のコマンドを実行して elasticsearch プラグインをインストールします。
npm install @elastic/elasticsearch次に、src ディレクトリに elasticsearch.js ファイルを作成し、次のコードを追加します。
import { Client } from '@elastic/elasticsearch'; const client = new Client({ node: 'http://localhost:9200' }); export default client;このようにして、Elasticsearch のインストールと構成が完了しました。
import React, { useState } from 'react'; import client from './elasticsearch'; function Search() { const [searchTerm, setSearchTerm] = useState(''); const [searchResults, setSearchResults] = useState([]); const handleSearch = async () => { const response = await client.search({ index: 'your_index_name', body: { query: { match: { content: searchTerm } } } }); const hits = response.body.hits.hits; setSearchResults(hits); }; return ( <div> <input type="text" value={searchTerm} onChange={e => setSearchTerm(e.target.value)} /> <button onClick={handleSearch}>搜索</button> {searchResults.map(result => ( <div key={result._id}>{result._source.content}</div> ))} </div> ); } export default Search;上記のコードでは、最初に elasticsearch モジュールが導入され、検索コンポーネントが作成されました。このコンポーネントには、入力ボックスと検索ボタンに加えて、検索結果の表示に使用される div が含まれています。 handleSearch 関数では、elasticsearch 検索インターフェイスを呼び出して検索結果を取得し、searchResults ステータスを更新します。
import React from 'react'; import Search from './Search'; function App() { return ( <div> <Search /> </div> ); } export default App;これで、検索コンポーネントはアプリコンポーネントに導入されています。
npm startブラウザを開いて http://localhost:3000 にアクセスすると、検索入力ボックスを含むページが表示されます。入力ボックスにキーワードを入力し、検索ボタンをクリックすると、検索結果が表示されます。 結論:
上記の手順により、React と Elasticsearch を使用して効率的な全文検索機能を実装することに成功しました。 React は UI を迅速に構築するためのプラットフォームを提供し、Elasticsearch は強力な全文検索エンジンを提供します。これらを組み合わせることで、強力な全文検索アプリケーションを簡単に開発できるようになります。この記事が読者の役に立ち、実際にさらに大きな役割を果たすことができれば幸いです。
以上がReact と Elasticsearch を使用して効率的な全文検索を実現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。