# j-SearchData

> Ce composant tente de filtrer les données selon la phrase de recherche.

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: fr
Content-SHA256: b890005c472ce8ce5ed82d31583fc7cb071610b1f72c09720feb76055678f0f5
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

Ce composant tente de filtrer les données selon la phrase de recherche.


__Configuration__ :

- `datasource {String}` __required__ - un chemin vers la source de données avec une liste d'articles `Array`
- `output {String}` __required__ - un chemin pour les articles filtrés
- `key {String}` __required__ - un nom clé/propriété pour la recherche (defaut: `name`)
- `delay {Number}` un retard (défaut : `50` ms)
- `splitwords {Boolean}` tente de trouver le mot dans différentes positions (defaut: `true`)

__Bon à savoir__ :

Ce composant ajoute les classes ci-dessous automatiquement lorsque :

- La classe `ui-search-used` est ajoutée lorsque l'utilisateur cherche quelque chose
- La classe `ui-search-empty` est ajoutée lorsque l'utilisateur cherche quelque chose et en même temps rien n'a été trouvé

Utilisez-le avec `<ui-component name="searchdata">`. Lorsque le composant n'est pas encore chargé, jComponent le télécharge lors de la première utilisation depuis l'adresse dans `DEF.fallback` (le CDN Componentator par défaut). Auteur : Peter Širka. Source : le référentiel de composants Componentator, licence MIT.

```html example.html
<ui-component name="textbox" path="search" config="type:search"></ui-component>
<br />
<ui-component name="searchdata" path="search" config="datasource:searchitems;output:searchoutput">
	<ui-bind path="searchoutput" config="template" class="block">
		<script type="text/html">
			{{ foreach m in value }}
				<div>{{ m.name }}</div>
			{{ end }}
		</script>
	</ui-bind>
</ui-component>

<script>

	// Search phrase
	var search = '';

	// Datasource for filtering
	var searchitems = [{ name: 'Apples' }, { name: 'Oranges' }, { name: 'Pears' }, { name: 'Black-eye bean' }, { name: 'Broccoli' }];

	// Here will be stored all filtered items
	var searchoutput = [];

</script>
```
