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>