ホームページ > ウェブフロントエンド > フロントエンドQ&A > Reactで検索キーワードのハイライトを実装する方法

Reactで検索キーワードのハイライトを実装する方法

藏色散人
リリース: 2022-12-30 13:50:31
オリジナル
3002 人が閲覧しました

react で検索キーワードを強調表示する方法: 1. 通常のルールを使用してリストのキーワードを照合し、タグを使用してキーワードを含めます; 2. color 属性をタグに追加し、react リッチ テキストを使用します。レンダリング: レンダリングにより、高速検索とキーワードの強調表示が可能になります。

Reactで検索キーワードのハイライトを実装する方法

このチュートリアルの動作環境: Windows 10 システム、react18.0.0 バージョン、Dell G3 コンピューター。

react で検索キーワードを強調表示するにはどうすればよいですか?

React は高速検索とキーワードの強調表示を実装します

要件:

検索ボタンをクリックして、あいまい一致リストをポップアップ表示します。

ドロップダウン リストからオプションを選択し、クリックすると、対応するページのキーワードの場所にジャンプします。

アイデア:

通常のルールを使用してリストのキーワードを照合し、ラベルを使用してキーワードを含めます。

ラベルに色属性を追加します。リッチ テキスト レンダリングで React Render を使用する

js コンテンツ:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

/**

    * 关键字变色

    * @params content 内容

    * @params keyword 关键词

    * @params tagName 标签名

   */

   warpTag(content, keyword, tagName) {

     if (content === "No results") {

       return content

     }

     const a = content.toLowerCase()

     const b = keyword.toLowerCase()

     const indexof = a.indexOf(b)

     const c = indexof > -1 ? content.substr(indexof, keyword.length) : ''

     const val = `<${tagName} style="color:#FF6600;">${c}</${tagName}>`

     const regS = new RegExp(keyword, &#39;gi&#39;)

     console.log(&#39;regS&#39;,regS,keyword,val)

     console.log(&#39;regS222222&#39;,content,content.replace(regS, val))

     return content.replace(regS, val)

   }

ログイン後にコピー

jsx コンテンツ:

1

<span dangerouslySetInnerHTML={{__html: this.warpTag(item.n, keyword, "span")}}></span>

ログイン後にコピー

推奨学習: 「react ビデオ チュートリアル

以上がReactで検索キーワードのハイライトを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート