snippet
snippet({
attribute: string,
hit: object,
// Optional parameters
highlightedTagName: string,
});
1
import { snippet } from 'instantsearch.js/es/helpers';
About this widget
The snippet function returns attributes in your search results in a shorter form (a snippet). Snippeted attributes are also highlighted.
This function uses Algolia’s snippeting feature in combination with the hits or infiniteHits widgets. It’s available as a string and as a function.
To determine which attributes should be snippeted, first set them from the Algolia dashboard, the CLI, or with the API (using the attributesToSnippet parameter):
1
2
3
4
5
search.addWidgets([
configure({
attributesToSnippet: ['description'],
})
]);
With attributesToSnippet, you can also set the snippet’s size to a specific number of words (it defaults to 10). For example, attributesToSnippet: ['description:5'].
Examples
1
2
3
4
5
6
7
8
9
hits({
container: '#hits',
templates: {
item: `
<h2>{{ name }}</h2>
<p>{{#helpers.snippet}}{ "attribute": "description" }{{/helpers.snippet}}</p>
`,
},
});
Options
| Parameter | Description | ||
|---|---|---|---|
attribute
|
type: string
Required
The attribute of the record to snippet. For deeply nested objects, specify a dot-separated value like |
||
|
Copy
|
|||
hit
|
type: object
Required
Original |
||
|
Copy
|
|||
highlightedTagName
|
type: string
default: mark
Optional
The name of the HTML element to wrap the snippeted parts of the string. |
||
|
Copy
|
|||
HTML output
1
<span>This is the <mark class="ais-Snippet-highlighted">highlighted text</mark></span>