Maison interface Web js tutoriel Guide de débogage du code React : Comment localiser et résoudre rapidement les bogues frontaux

Guide de débogage du code React : Comment localiser et résoudre rapidement les bogues frontaux

Sep 26, 2023 pm 02:25 PM
react 调试 Bogue frontal

Guide de débogage du code React : Comment localiser et résoudre rapidement les bogues frontaux

Guide de débogage de code React : Comment localiser et résoudre rapidement les bogues frontaux

Citation :
Lors du développement d'applications React, vous rencontrez souvent une variété de bogues qui peuvent faire planter l'application ou provoquer des erreurs de comportement. Par conséquent, maîtriser les compétences de débogage est une capacité essentielle pour tout développeur React. Cet article présentera quelques techniques pratiques pour localiser et résoudre les bogues frontaux, et fournira des exemples de code spécifiques pour aider les lecteurs à localiser et à résoudre rapidement les bogues dans les applications React.

1. Sélection d'outils de débogage :
Dans les applications React, il existe de nombreux outils qui peuvent nous aider à déboguer le code. Voici plusieurs outils de débogage couramment utilisés :

  1. Outils de développement Chrome : les outils de développement fournis avec le navigateur Chrome sont un puissant outil de débogage qui peut déboguer le code React en inspectant les éléments, en affichant les requêtes réseau, en affichant les journaux, etc.
  2. Outils de développement React : il s'agit d'un plug-in Chrome qui peut fournir des informations plus intuitives et détaillées au niveau des composants React, ainsi que des fonctions permettant d'observer et de modifier l'état des composants React.
  3. Redux DevTools : si votre application utilise Redux comme bibliothèque de gestion d'état, il est très utile d'utiliser Redux DevTools pour déboguer le flux d'état Redux. Il peut vous aider à afficher et à modifier le statut dans la boutique Redux et à consulter le statut historique.

2. Localisation des exceptions des composants React :

  1. Utilisez le panneau Éléments des outils de développement Chrome pour vérifier la hiérarchie des composants React et voir si les résultats de rendu sont comme prévu. Vous pouvez déterminer le problème spécifique en vérifiant les accessoires et l'état des composants, ainsi qu'en dépannant les composants susceptibles d'être défectueux.

Exemple de code :
Supposons que nous ayons un composant TodoList qui affiche une liste de tâches.

import React, { useState } from 'react';

function TodoList() {
  const [todos, setTodos] = useState([]);

  function addTodo() {
    setTodos([...todos, { id: Date.now(), text: 'New todo' }]);
  }

  return (
    <div>
      <button onClick={addTodo}>Add Todo</button>
      {todos.map((todo) => (
        <div key={todo.id}>{todo.text}</div>
      ))}
    </div>
  );
}

export default TodoList;
Copier après la connexion

Supposons qu'une erreur se produise lors du rendu de la liste de tâches et que le résultat du rendu correspondant ne puisse pas être affiché sur la page. Nous pouvons utiliser le panneau Éléments des outils de développement Chrome pour vérifier s'il existe des exceptions de rendu et voir si le statut et les accessoires sont transmis correctement.

  1. Utilisez le panneau de la console Chrome Developer Tools pour afficher les messages d'avertissement et d'erreur dans les composants React. React fournit généralement des messages d'avertissement et d'erreur utiles en mode développement pour nous aider à localiser des problèmes spécifiques.

Exemple de code :
Modifiez le composant TodoList ci-dessus pour générer intentionnellement une erreur lors du rendu de la liste de tâches.

import React, { useState } from 'react';

function TodoList() {
  const [todos, setTodos] = useState([]);

  function addTodo() {
    setTodos([...todos, { id: Date.now(), text: 'New todo' }]);
  }

  // 引发错误:todos.map is not a function
  const renderedTodos = todos.map((todo) => <div key={todo.id}>{todo.text}</div>);

  return (
    <div>
      <button onClick={addTodo}>Add Todo</button>
      {renderedTodos}
    </div>
  );
}

export default TodoList;
Copier après la connexion

Après avoir actualisé la page, vérifiez le panneau de console des outils de développement Chrome et vous pouvez voir le message d'erreur : todos.map n'est pas une fonction. Grâce à ce message d'erreur, nous pouvons localiser l'emplacement où l'erreur s'est produite dans la ligne de code todos.map. todos.map is not a function。通过这个错误信息,我们可以定位到错误发生的位置是在todos.map这一行代码。

三、使用断点调试:

  1. 在Chrome开发者工具的Sources面板中,我们可以使用断点调试的功能,将代码执行暂停在某一行。此时,我们可以查看变量的值、调用栈、以及执行上下文等信息,帮助我们定位和解决问题。

示例代码:
在上面的TodoList组件中,我们可以在点击按钮添加待办事项时设置一个断点。

import React, { useState } from 'react';

function TodoList() {
  const [todos, setTodos] = useState([]);

  function addTodo() {
    debugger; // 设置断点
    setTodos([...todos, { id: Date.now(), text: 'New todo' }]);
  }

  return (
    <div>
      <button onClick={addTodo}>Add Todo</button>
    </div>
  );
}

export default TodoList;
Copier après la connexion

刷新页面并打开Chrome开发者工具的Sources面板,然后点击按钮。代码会在debugger

3. Utiliser le débogage des points d'arrêt :
  1. Dans le panneau Sources des outils de développement Chrome, nous pouvons utiliser la fonction de débogage des points d'arrêt pour suspendre l'exécution du code sur une certaine ligne. À ce stade, nous pouvons afficher la valeur de la variable, la pile d'appels, le contexte d'exécution et d'autres informations pour nous aider à localiser et à résoudre le problème.


Exemple de code :

Dans le composant TodoList ci-dessus, nous pouvons définir un point d'arrêt lorsque vous cliquez sur le bouton pour ajouter une tâche à faire.

import { createStore } from 'redux';

const initialState = {
  todos: [],
  filter: 'all',
};

// 定义reducer函数
function reducer(state = initialState, action) {
  switch (action.type) {
    case 'ADD_TODO':
      return {
        ...state,
        todos: [...state.todos, action.payload],
      };
    case 'SET_FILTER':
      return {
        ...state,
        filter: action.payload,
      };
    default:
      return state;
  }
}

// 创建store
const store = createStore(reducer);

export default store;
Copier après la connexion
Actualisez la page et ouvrez le panneau Sources des outils de développement Chrome et cliquez sur le bouton. Le code mettra en pause l'exécution au niveau de la ligne debugger. À ce moment, nous pouvons visualiser l'exécution du code ligne par ligne et vérifier si les valeurs des variables sont correctes.


Dans le développement Redux, vous pouvez utiliser Redux DevTools pour déboguer le flux d'état Redux. Grâce à Redux DevTools, nous pouvons afficher et modifier le statut dans le magasin Redux, consulter le statut historique et visualiser l'envoi des actions. 🎜🎜🎜Exemple de code : 🎜Si nous avons un Redux Store, il contient des tâches et des états de filtre. 🎜rrreee🎜Nous pouvons utiliser Redux DevTools pour afficher et modifier les tâches et l'état des filtres, ainsi que l'exécution des actions envoyées. 🎜🎜Conclusion : 🎜En utilisant divers outils et techniques de débogage, nous pouvons rapidement localiser et résoudre les bogues front-end. De la vérification de la structure des composants React, à l'affichage des messages d'avertissement et d'erreur, à l'utilisation du débogage des points d'arrêt et de Redux DevTools, ces méthodes peuvent nous aider à déboguer le code React de manière complète et efficace. La maîtrise de ces compétences améliorera considérablement notre efficacité et nos capacités de débogage dans le développement de React. 🎜

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 de ce site Web
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

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)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Explication détaillée du débogage des fonctions C++ : Comment déboguer les problèmes dans les fonctions multithread ? Explication détaillée du débogage des fonctions C++ : Comment déboguer les problèmes dans les fonctions multithread ? May 02, 2024 pm 04:15 PM

Le débogage multithread C++ peut utiliser GDB : 1. Activer la compilation des informations de débogage ; 2. Définir les points d'arrêt ; 3. Utiliser les threads d'information pour afficher les threads ; 4. Utiliser le thread pour changer de thread ; Cas réel de débogage : 1. Utilisez threadapplyallbt pour imprimer la pile ; 2. Vérifiez l'état du thread ; 3. Exécutez le thread principal en une seule étape ;

Comment utiliser LeakSanitizer pour déboguer les fuites de mémoire C++ ? Comment utiliser LeakSanitizer pour déboguer les fuites de mémoire C++ ? Jun 02, 2024 pm 09:46 PM

Comment utiliser LeakSanitizer pour déboguer les fuites de mémoire C++ ? Installez LeakSanitizer. Activez LeakSanitizer via l'indicateur de compilation. Exécutez l’application et analysez le rapport LeakSanitizer. Identifiez les types d’allocation de mémoire et les emplacements d’allocation. Corrigez les fuites de mémoire et assurez-vous que toute la mémoire allouée dynamiquement est libérée.

Raccourci vers le débogage et l'analyse de la fonction Golang Raccourci vers le débogage et l'analyse de la fonction Golang May 06, 2024 pm 10:42 PM

Cet article présente des raccourcis pour le débogage et l'analyse de la fonction Go, notamment : le débogueur intégré dlv, qui est utilisé pour suspendre l'exécution, vérifier les variables et définir des points d'arrêt. Journalisation, utilisez le package de journaux pour enregistrer les messages et les afficher pendant le débogage. L'outil d'analyse des performances pprof génère des graphiques d'appels et analyse les performances, et utilise gotoolpprof pour analyser les données. Cas pratique : Analyser les fuites mémoire via pprof et générer un graphe d'appel pour afficher les fonctions à l'origine des fuites.

Intégration du framework Java et du framework front-end React Intégration du framework Java et du framework front-end React Jun 01, 2024 pm 03:16 PM

Intégration du framework Java et du framework React : Étapes : Configurer le framework Java back-end. Créer une structure de projet. Configurez les outils de construction. Créez des applications React. Écrivez les points de terminaison de l'API REST. Configurez le mécanisme de communication. Cas pratique (SpringBoot+React) : Code Java : Définir le contrôleur RESTfulAPI. Code React : obtenez et affichez les données renvoyées par l'API.

Comment effectuer des tests de concurrence et le débogage dans la programmation simultanée Java ? Comment effectuer des tests de concurrence et le débogage dans la programmation simultanée Java ? May 09, 2024 am 09:33 AM

Tests de concurrence et débogage Les tests de concurrence et le débogage dans la programmation simultanée Java sont cruciaux et les techniques suivantes sont disponibles : Tests de concurrence : tests unitaires : isolez et testez une seule tâche simultanée. Tests d'intégration : tester l'interaction entre plusieurs tâches simultanées. Tests de charge : évaluez les performances et l'évolutivité d'une application sous une charge importante. Débogage simultané : points d'arrêt : suspendez l'exécution du thread et inspectez les variables ou exécutez le code. Journalisation : enregistrez les événements et l'état du fil. Trace de pile : identifiez la source de l’exception. Outils de visualisation : surveillez l'activité des threads et l'utilisation des ressources.

Comment déboguer le code asynchrone PHP Comment déboguer le code asynchrone PHP May 31, 2024 am 09:08 AM

Les outils de débogage du code asynchrone PHP incluent : Psalm : un outil d'analyse statique qui trouve les erreurs potentielles. ParallelLint : un outil qui inspecte le code asynchrone et fournit des recommandations. Xdebug : Une extension pour déboguer les applications PHP en activant une session et en parcourant le code. D'autres conseils incluent l'utilisation de la journalisation, des assertions, l'exécution de code localement et l'écriture de tests unitaires.

Erreurs de débogage PHP : un guide des erreurs courantes Erreurs de débogage PHP : un guide des erreurs courantes Jun 05, 2024 pm 03:18 PM

Les erreurs courantes de débogage PHP incluent : Erreurs de syntaxe : vérifiez la syntaxe du code pour vous assurer qu'il n'y a pas d'erreurs. Variable non définie : avant d'utiliser une variable, assurez-vous qu'elle est initialisée et qu'une valeur lui est attribuée. Point-virgules manquants : ajoutez des points-virgules à tous les blocs de code. La fonction n'est pas définie : vérifiez que le nom de la fonction est correctement orthographié et assurez-vous que le bon fichier ou l'extension PHP est chargé.

Quelles sont les techniques de débogage des appels récursifs dans les fonctions Java ? Quelles sont les techniques de débogage des appels récursifs dans les fonctions Java ? May 05, 2024 am 10:48 AM

Les techniques suivantes sont disponibles pour déboguer les fonctions récursives : Vérifier la trace de la pileDéfinir les points de débogageVérifier si le cas de base est correctement implémentéCompter le nombre d'appels récursifsVisualiser la pile récursive

See all articles