0.11.1 • Published 6 years ago

react-highlight-contextual-words v0.11.1

Weekly downloads
1
License
MIT
Repository
github
Last release
6 years ago

React component to highlight words within a larger body of text.

Check out a demo here.

Usage

To use it, just provide it with an array of search terms and a body of text to highlight.

Try this example in Code Sandbox.

import React from "react";
import ReactDOM from "react-dom";
import Highlighter from "react-highlight-words";

ReactDOM.render(
  <Highlighter
    highlightClassName="YourHighlightClass"
    searchWords={["and", "or", "the"]}
    autoEscape={true}
    textToHighlight="The dog is chasing the cat. Or perhaps they're just playing?"
  />,
  document.getElementById("root")
);

And the Highlighter will mark all occurrences of search terms within the text:

Props

PropertyTypeRequired?Description
activeClassNameStringThe class name to be applied to an active match. Use along with activeIndex
activeIndexStringSpecify the match index that should be actively highlighted. Use along with activeClassName
activeStyleObjectThe inline style to be applied to an active match. Use along with activeIndex
autoEscapeBooleanEscape characters in searchWords which are meaningful in regular expressions
classNameStringCSS class name applied to the outer/wrapper <span>
caseSensitiveBooleanSearch should be case sensitive; defaults to false
findChunksFunctionUse a custom function to search for matching chunks. This makes it possible to use arbitrary logic when looking for matches. See the default findChunks function in highlight-words-core for signature. Have a look at the custom findChunks example on how to use it.
highlightClassNameStringCSS class name applied to highlighted text
highlightStyleObjectInline styles applied to highlighted text
highlightTagNodeType of tag to wrap around highlighted matches; defaults to mark but can also be a React element (class or functional)
sanitizeFunctionProcess each search word and text to highlight before comparing (eg remove accents); signature (text: string): string
searchWordsArrayArray of search words. The search terms are treated as RegExps unless autoEscape is set.
textToHighlightStringText to highlight matches in
unhighlightClassNameStringCSS class name applied to unhighlighted text
unhighlightStyleObjectInline styles applied to unhighlighted text

Installation

npm i --save react-highlight-words

License

MIT License - fork, modify and use however you want.