Le rendu des listes de données dans REACT implique d'itatrier le tableau de données et d'utiliser la fonction map
pour générer une liste d'éléments React. Voici un exemple de la façon de rendre une liste d'éléments:
<code class="jsx">const items = [ { id: 1, name: 'Item 1' }, { id: 2, name: 'Item 2' }, { id: 3, name: 'Item 3' }, ]; function ListComponent() { return ( <ul> {items.map((item) => ( <li key="{item.id}">{item.name}</li> ))} </ul> ); }</code>
Dans cet exemple, la fonction map
est utilisée pour parcourir le tableau items
, et pour chaque élément, un élément de liste ( <li>
) est créé. L'accessoire key
est essentiel car il aide à réagir d'identifier les éléments qui ont changé, ont été ajoutés ou ont été supprimés.
Lors du rendu des listes dans React, l'utilisation des clés est cruciale pour les performances et la réconciliation appropriée. Voici quelques meilleures pratiques pour utiliser les clés:
Math.random()
ou Date.now()
. Ceux-ci peuvent entraîner des problèmes de réconciliation et de performance.
Voici un exemple d'une utilisation clé correcte:
<code class="jsx">const users = [ { id: 1, name: 'Alice' }, { id: 2, name: 'Bob' }, ]; function UserList() { return ( <ul> {users.map((user) => ( <li key="{user.id}">{user.name}</li> ))} </ul> ); }</code>
L'optimisation des performances du rendu de liste dans React peut être réalisée grâce à plusieurs techniques:
MÉMOISATION: Utilisez React.memo
ou useMemo
pour éviter les redevances inutiles des éléments de liste. React.memo
est utile pour les composants fonctionnels, et useMemo
peut être utilisé pour optimiser les calculs coûteux.
<code class="jsx">import React from 'react'; const Item = React.memo(function Item({ name }) { return <li>{name}</li>; }); function ListComponent({ items }) { return ( <ul> {items.map((item) => ( <item key="{item.id}" name="{item.name}"></item> ))} </ul> ); }</code>
react-window
ou react-virtualized
. Ces bibliothèques ne rendent que les éléments visibles de la liste, améliorant considérablement les performances.
<li> Évitez la nidification profonde: gardez vos composants d'élément de liste aussi simples que possible. Évitez les composants profondément imbriqués dans les éléments de la liste, car cela peut entraîner une augmentation des temps de réinstallation.
<li> Mises à jour par lots: Utilisez unstable_batchedUpdates
de Reactdom à un lot de multiples mises à jour d'état, ce qui peut améliorer les performances en réduisant le nombre de redireurs.
<li> Utilisez des opérations de liste efficaces: lors de la mise à jour des listes, préférez les opérations comme filter
ou map
via splice
ou push
pour éviter de muter le tableau d'origine, ce qui peut conduire à des redesseurs inutiles.
Lorsque vous rendez les listes dans React, il est important d'éviter les pièges courants qui peuvent entraîner des erreurs ou des problèmes de performances:
Mutant le tableau d'origine: la mutation directe du tableau d'origine peut entraîner un comportement et des bogues inattendus. Créez toujours un nouveau tableau lors de la mise à jour de l'état.
<code class="jsx">// Incorrect: Mutating the original array const items = [{ id: 1, name: 'Item 1' }]; items.push({ id: 2, name: 'Item 2' }); // Correct: Creating a new array const items = [{ id: 1, name: 'Item 1' }]; const newItems = [...items, { id: 2, name: 'Item 2' }];</code>
react-window
pour ne rendre que la partie visible de la liste.
En évitant ces erreurs courantes, vous pouvez vous assurer que le rendu de votre liste dans React est à la fois efficace et sans erreur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!