Créer une barre de recherche dans React.js

Ce blog est destiné aux personnes qui ont une compréhension de base de react.js

Dans ce blog, nous allons créer une application simple dans react.js qui affiche une barre de recherche en haut et une liste de noms de fleurs ci-dessous, alias nos fausses données. La barre de recherche nous permettra de taper dans un champ de saisie qui recherchera nos fausses données et affichera instantanément le (s) nom (s) de la fleur à l'écran. Nous utiliserons des composants basés sur les classes pour y parvenir.

Commencer

Pour créer un nouveau projet de réaction, exécutez:

Source: https://reactjs.org/docs/create-a-new-react-app.html

Supprimez tous les fichiers inutiles comme indiqué ci-dessous:

Créez un sous-dossier de composant dans le dossier src. Créez ensuite deux composants enfants nommés FlowersContainer et SearchBar.

Utilisez le code suivant pour le style CSS. Vous êtes invités à personnaliser l'application à votre guise.

Composant d'application de configuration

App.js sera votre composant principal où toutes vos données et méthodes d'instance seront stockées. Voir l'image ci-dessous pour mon code.

Maintenant, décomposons ce code!

Ligne 7: état

Dans notre objet d'état, nous avons un état «fleurs» qui a un tableau de noms de fleurs comme valeur. Nous avons également un état «searchTerm» qui a une chaîne vide comme valeur qui représentera le terme de recherche que nous allons taper dans notre champ d'entrée de recherche.

Ligne 21: fonction handleSearchTermChange

La fonction handleSearchTermChange sera transmise comme accessoire dans le composant SeachBar. Lorsqu'il est déclenché, setState mettra à jour la valeur de «searchTerm».

Ligne 25: fonction filterFlower

La fonction filterFlower sera notre fonction de rappel qui sera passée dans la méthode de filtrage ci-dessous. La méthode toLowerCase () changera les chaînes en minuscules. La méthode split () divisera la chaîne en sous-chaînes à chaque espace de la chaîne et placera les sous-chaînes dans un tableau. Ensuite, la méthode join () prendra ce tableau de chaînes et les combinera en une seule chaîne sans espaces. Lorsque l'utilisateur tape dans le champ de saisie, l'entrée peut être insensible à la casse et ne tiendra pas compte des espaces vides dans les noms de fleurs avec plusieurs mots. Vous avez peut-être remarqué que nous avons également inclus «indexOf (normalisé)! == -1» dans la fleur. Cela vérifie si la chaîne que nous tapons existe dans les noms des fleurs.

Ligne 30: JSX

Dans la méthode de rendu du composant App, nous avons le composant enfant SearchBar et nos méthodes filter et map avec le composant FlowersContainer passé. La méthode filter créera un nouveau tableau avec tous les noms de fleurs qui passent le test qui est notre fonction filterFlower. Ensuite, nous appelons la méthode map qui prend dans notre tableau filtré de fleurs à analyser en composants de fleurs individuels.

Créer un composant FlowersContainer

Le composant FlowersContainer affichera les éléments qui ressemblent à tout ce que nous tapons dans le champ d'entrée de recherche.

Créer un composant SearchBar

Le composant SearchBar contient un événement onChange qui transmet notre fonction handleSearchTermChange qui définit le searchTerm sur «e.target.value». Lorsque nous tapons dans le champ d'entrée de recherche, setState est déclenché dans handleSearchTermChange, puis notre composant App est à nouveau rendu.

Votre produit final devrait ressembler à ceci:

Voilà! J'espère que vous avez apprécié mon petit tutoriel. Ce n'est qu'une des nombreuses façons de créer une barre de recherche dans react.js.

Ressources:

Suggested posts

Éviter les conséquences dévastatrices d'un accident vasculaire cérébral : apprendre du parcours d'une famille.

Éviter les conséquences dévastatrices d'un accident vasculaire cérébral : apprendre du parcours d'une famille.

Introduction Un accident vasculaire cérébral est une urgence médicale qui peut frapper n'importe qui à tout moment. Elle survient lorsque le flux sanguin vers une partie du cerveau est perturbé, entraînant une perte soudaine de la fonction cérébrale.

Mes ressources de codage les plus utilisées

Mes ressources de codage les plus utilisées

Cette semaine, j'ai reçu un e-mail d'un membre de la liste de diffusion quotidienne. Ils voulaient savoir : Quelles ressources consultez-vous quotidiennement, hebdomadairement et mensuellement ? Grande question ! Je suis heureux d'essayer de partager quelques idées sur mon flux de travail et les principales ressources que j'utilise.

Related posts

Le défi de lecture Goodreads est toxique

Le défi de lecture Goodreads est toxique

La démangeaison dans ma main s'est propagée alors que je négociais avec le libraire local pour un autre livre. Ce livre, comme les autres que j'ai achetés récemment, trouverait son trône sur ma pile «À lire» (TBR); et pourtant, je l'ai acheté.

Deux ans en design - Le bon, le mauvais et le laid…

Deux ans en design - Le bon, le mauvais et le laid…

"Hey Siri, joue Me Dive d'Olivia Dean." C'était en mai 2021 lorsque j'ai commencé mon stage à la Future Academy Africa à Akure, au Nigeria.

VIE SANS LIMITE

Quand tu grandis, on a tendance à te dire que le monde est comme il est et que ta vie est juste de vivre ta vie à l'intérieur du monde, sans jamais risquer ta vie, juste suivre un chemin tracé et mourir à la fin, et essayer de ne pas cogner trop les murs. Mais c'est une vie très limitée.

Journal ouvert

Journal ouvert

Journal ouvert : une image par jour. J'ai toujours été fasciné par les histoires.