recherche
Maisoninterface Webjs tutorieleact Astuces pour améliorer la qualité et les performances du code

eact Tricks to Improve Code Quality and Performance

React est une puissante bibliothèque JavaScript pour créer des interfaces utilisateur, et avec seulement quelques astuces, vous pouvez écrire du code plus propre, plus efficace et maintenable. Dans cet article, nous explorerons cinq astuces React essentielles qui vous aideront à écrire du code plus performant et plus lisible.


1. Utilisez des opérateurs ternaires au lieu des opérateurs AND (&&) pour restituer les éléments

Dans React, il est courant de rendre conditionnellement des composants ou des éléments en fonction de certaines conditions. Cependant, l'utilisation de l'opérateur && pour le rendu conditionnel peut être délicate lorsque l'expression évaluée aboutit à une valeur fausse (par exemple, faux, nul, non défini, 0 ou ''). Pour éviter tout comportement de rendu involontaire, préférez utiliser un opérateur ternaire.

Exemple de && Comportement :

Utilisation de && dans le rendu conditionnel :

{0 && <h1 id="Hello-world">Hello world 5</h1>}
{0 ? <h1 id="Hello-world">Hello world 6</h1> : null}
  • Le premier exemple ({0 &&

    Hello world 5

    }) affichera 0 dans l'interface utilisateur car 0 est une valeur fausse en JavaScript, et React l'interprétera comme faux. Cependant, au lieu de ne rien afficher, React affichera lui-même la fausse valeur (0).
  • Le deuxième exemple ({0 ?

    Hello world 6

    : null}) ne rendra rien. Puisque la condition est 0 (ce qui est faux), l'opérateur ternaire sera évalué à null et React ne rendra rien.

Meilleure approche avec l'opérateur ternaire :

Au lieu de vous fier à l'opérateur &&, vous pouvez utiliser un opérateur ternaire pour vous assurer d'afficher le contenu de secours correct, en particulier lorsque la condition est fausse.

{0 ? <h1 id="Hello-world">Hello world 5</h1> : null}

Dans ce cas, si la condition est fausse (0), React rendra null, ce qui n'entraînera aucun rendu, offrant un comportement plus prévisible et prévu.


2. Initialiseur paresseux avec useState

Le hook useState de React peut prendre une fonction comme valeur initiale, vous permettant d'initialiser paresseusement l'état. Ceci est particulièrement utile lorsque l'état initial est coûteux à calculer ou lorsqu'il dépend d'un calcul qui ne doit être exécuté qu'une seule fois.

Pourquoi utiliser l'initialisation paresseuse ?

  • Amélioration des performances : Si l'état initial implique des calculs coûteux ou une récupération de données, l'initialisation paresseuse permet de différer ce coût jusqu'à ce qu'il soit réellement nécessaire.
  • Évitez les calculs inutiles : La fonction que vous transmettez à useState comme valeur initiale ne sera exécutée qu'une seule fois lors du montage du composant, et elle ne sera pas recalculée lors des rendus suivants.

Exemple :

{0 && <h1 id="Hello-world">Hello world 5</h1>}
{0 ? <h1 id="Hello-world">Hello world 6</h1> : null}

Dans cet exemple :

  • useState(() => Math.random()) appellera la fonction une seule fois, lors du rendu initial.
  • Cela garantit que la génération de nombres aléatoires ne se produit qu'une seule fois, améliorant ainsi les performances si le calcul était coûteux.

3. Utilisez des composants de chargement différé pour améliorer les performances

React.lazy() et Suspense sont d'excellents outils pour le chargement paresseux de composants, ce qui permet de diviser votre JavaScript en paquets plus petits et de les charger uniquement en cas de besoin. Cela réduit considérablement le temps de chargement initial et améliore les performances de votre application.

Exemple :

{0 ? <h1 id="Hello-world">Hello world 5</h1> : null}

Dans cet exemple :

  • React.lazy() vous permet d'importer dynamiquement LazyComponent.
  • Le composant Suspense est utilisé pour afficher un état de chargement jusqu'à ce que le composant chargé paresseux soit entièrement rendu.

En utilisant le chargement paresseux, votre application chargera uniquement les composants nécessaires au rendu initial et en récupérera d'autres à la demande, améliorant ainsi les performances, en particulier dans les grandes applications.


4. Utilisation du chaînage facultatif en JavaScript

Si vous travaillez avec JavaScript, le chaînage facultatif (?.) est une bouée de sauvetage lors de l'accès à des propriétés profondément imbriquées sur des objets. Il empêche les erreurs qui se produisent lors de la tentative d'accès aux propriétés non définies ou nulles. Le chaînage facultatif est disponible dans JavaScript moderne et vous permet d'accéder en toute sécurité aux propriétés sans avoir à vérifier manuellement la valeur null ou non définie.

Exemple :

import React, { useState } from 'react';

const ExpensiveComponent: React.FC = () => {
  const [count, setCount] = useState(() => {
    // Expensive computation
    console.log('Computing initial state');
    return Math.random(); // For example, generate a random number
  });

  return <div>Initial Random Value: {count}</div>;
};

export default ExpensiveComponent;

Dans cet exemple :

  • data?.info?.address accède en toute sécurité à la propriété d'adresse sans générer d'erreur si les données ou les informations sont indéfinies ou nulles.
  • Le ?? L'opérateur fournit une valeur par défaut si l'adresse n'est pas définie.

Sans chaînage facultatif, vous devrez vérifier manuellement chaque niveau, ce qui peut rapidement conduire à un code encombré et plus difficile à lire. Le chaînage optionnel le maintient propre et sans erreur.


5. Utilisez useRef pour les formulaires pour éviter les nouveaux rendus

Dans React, lorsque vous travaillez avec des formulaires et que vous n'avez pas besoin que le composant soit restitué à chaque modification d'entrée, il est préférable d'utiliser useRef au lieu de useState. useRef stocke directement la valeur du champ de saisie et ne déclenche pas de nouveau rendu lorsque la valeur change, ce qui le rend plus performant pour les grands formulaires.

Exemple :

{0 && <h1 id="Hello-world">Hello world 5</h1>}
{0 ? <h1 id="Hello-world">Hello world 6</h1> : null}

Dans cet exemple TypeScript :

  • useRef est utilisé pour garder une trace de la valeur d'entrée sans provoquer un nouveau rendu du composant à chaque modification d'entrée.
  • nameRef.current est utilisé pour accéder directement à la valeur de l'entrée lorsque le formulaire est soumis.

L'utilisation de useRef est particulièrement utile lorsque la valeur du formulaire n'a pas besoin de déclencher de nouveaux rendus pour la validation ou les mises à jour dynamiques, ce qui en fait un excellent choix pour les formulaires sensibles aux performances.


Conclusion

En appliquant ces cinq astuces React dans votre code, vous pouvez améliorer considérablement les performances, la lisibilité et la maintenabilité. Voici un bref récapitulatif :

  1. Utilisez des opérateurs ternaires pour le rendu conditionnel au lieu de &&.
  2. Profitez de l'initialisation paresseuse dans useState.
  3. Implémentez un chargement différé pour les composants afin d'améliorer les temps de chargement initiaux.
  4. Utilisez le chaînage facultatif pour un accès plus sûr aux propriétés en JavaScript.
  5. Utilisez useRef dans les formulaires pour éviter les rendus inutiles.

Grâce à ces techniques, vos applications React seront plus efficaces et plus faciles à maintenir, conduisant à de meilleures expériences utilisateur et à un développement plus fluide. Bon codage !

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!

Déclaration
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Remplacer les caractères de chaîne en javascriptRemplacer les caractères de chaîne en javascriptMar 11, 2025 am 12:07 AM

Explication détaillée de la méthode de remplacement de la chaîne JavaScript et de la FAQ Cet article explorera deux façons de remplacer les caractères de chaîne dans JavaScript: le code JavaScript interne et le HTML interne pour les pages Web. Remplacer la chaîne dans le code JavaScript Le moyen le plus direct consiste à utiliser la méthode Remplace (): str = str.replace ("trouver", "remplacer"); Cette méthode remplace uniquement la première correspondance. Pour remplacer toutes les correspondances, utilisez une expression régulière et ajoutez le drapeau global G: str = str.replace (/ fi

Tutoriel de configuration de l'API de recherche Google personnaliséTutoriel de configuration de l'API de recherche Google personnaliséMar 04, 2025 am 01:06 AM

Ce tutoriel vous montre comment intégrer une API de recherche Google personnalisée dans votre blog ou site Web, offrant une expérience de recherche plus raffinée que les fonctions de recherche de thème WordPress standard. C'est étonnamment facile! Vous pourrez restreindre les recherches à Y

Exemple Couleurs Fichier JSONExemple Couleurs Fichier JSONMar 03, 2025 am 12:35 AM

Cette série d'articles a été réécrite à la mi-2017 avec des informations à jour et de nouveaux exemples. Dans cet exemple JSON, nous examinerons comment nous pouvons stocker des valeurs simples dans un fichier à l'aide du format JSON. En utilisant la notation de paire de valeurs clés, nous pouvons stocker n'importe quel type

10 Highlighters de syntaxe jQuery10 Highlighters de syntaxe jQueryMar 02, 2025 am 12:32 AM

Améliorez votre présentation de code: 10 surligneurs de syntaxe pour les développeurs Partager des extraits de code sur votre site Web ou votre blog est une pratique courante pour les développeurs. Le choix du bon surligneur de syntaxe peut améliorer considérablement la lisibilité et l'attrait visuel. T

Créez vos propres applications Web AjaxCréez vos propres applications Web AjaxMar 09, 2025 am 12:11 AM

Vous voici donc, prêt à tout savoir sur cette chose appelée Ajax. Mais qu'est-ce que c'est exactement? Le terme Ajax fait référence à un regroupement lâche de technologies utilisées pour créer un contenu Web interactif dynamique. Le terme Ajax, inventé à l'origine par Jesse J

8 Superbes plugins de mise en page JQuery Page8 Superbes plugins de mise en page JQuery PageMar 06, 2025 am 12:48 AM

Tirez parti de jQuery pour les dispositions de page Web sans effort: 8 plugins essentiels JQuery simplifie considérablement la mise en page de la page Web. Cet article met en évidence huit puissants plugins jQuery qui rationalisent le processus, particulièrement utile pour la création de sites Web manuels

10 tutoriels JavaScript & jQuery MVC10 tutoriels JavaScript & jQuery MVCMar 02, 2025 am 01:16 AM

Cet article présente une sélection organisée de plus de 10 didacticiels sur les cadres JavaScript et JQuery Model-View-Controller (MVC), parfait pour augmenter vos compétences en développement Web au cours de la nouvelle année. Ces tutoriels couvrent une gamme de sujets, de Foundatio

Qu'est-ce que & # x27; ceci & # x27; en javascript?Qu'est-ce que & # x27; ceci & # x27; en javascript?Mar 04, 2025 am 01:15 AM

Points de base Ceci dans JavaScript fait généralement référence à un objet qui "possède" la méthode, mais cela dépend de la façon dont la fonction est appelée. Lorsqu'il n'y a pas d'objet actuel, cela fait référence à l'objet global. Dans un navigateur Web, il est représenté par Window. Lorsque vous appelez une fonction, cela maintient l'objet global; mais lors de l'appel d'un constructeur d'objets ou de l'une de ses méthodes, cela fait référence à une instance de l'objet. Vous pouvez modifier le contexte de ceci en utilisant des méthodes telles que Call (), Appliquer () et Bind (). Ces méthodes appellent la fonction en utilisant la valeur et les paramètres donnés. JavaScript est un excellent langage de programmation. Il y a quelques années, cette phrase était

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

Listes Sec

Listes Sec

SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

Navigateur d'examen sécurisé

Navigateur d'examen sécurisé

Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.

Version crackée d'EditPlus en chinois

Version crackée d'EditPlus en chinois

Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code

mPDF

mPDF

mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) ​​et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),