Débarrassez-vous de l'avertissement "débogueur distant est dans un onglet d'arrière-plan" dans React Native

J'ai commencé un nouveau projet natif React et je continue à recevoir l'avertissement suivant:

Le débogueur distant se trouve dans un onglet d'arrière-plan, ce qui peut ralentir l'exécution des applications. Corrigez cela en mettant en avant l'onglet (ou en l'ouvrant dans une fenêtre séparée).

C'est un peu ennuyeux alors je veux savoir comment je peux m'en débarrasser? J'exécute le débogueur dans Chrome et je l'ai déplacé dans une fenêtre séparée mais cela n'a pas aidé.

53
demandé sur Max Tommy Mitschke 2016-12-14 18:35:52

11 réponses

Pour réagir indigènes v0.57+:

import { YellowBox } from 'react-native';
YellowBox.ignoreWarnings(['Remote debugger']);

Référencez-le à partir des documents natifs officiels React:

Https://facebook.github.io/react-native/docs/debugging.html

Réagir indigènes v0.56 ou ci-dessous:

Ajoutez ce qui suit Au début de votre code:

console.ignoredYellowBox = ['Remote debugger'];

Facile, simple et spécifique à cette erreur. Fonctionne pour moi. Peut remplacer n'importe quel texte que vous voulez.

96
répondu kjonsson 2018-09-01 03:52:06

Vous pouvez utiliser le débogueur natif React disponible à https://github.com/jhen0409/react-native-debugger c'est une application autonome pour le débogage des applications natives React pendant le développement.

22
répondu varunvs 2016-12-14 19:58:32

Cette solution est un travail pour moi

Ouvrir / déplacer http://localhost:8081/debugger-ui (chemin par défaut pour le débogage à distance) dans la fenêtre séparée

Peut-être que cela pourrait aider:)

19
répondu anztrax 2016-12-21 17:43:49
  1. Déplacez http://localhost:*****/debugger-ui sur la fenêtre séparée.
  2. Redémarrez Remote JS Debugging.
7
répondu Ramzan Chasygov 2017-08-03 21:58:02

Ce problème a été résolu lorsque j'ai fermé toutes les fenêtres Chrome ouvertes et redémarré le débogage de suppression. J'avais déjà eu des fenêtres Chrome ouvertes, il semble donc que leur ouverture Tue les performances.

4
répondu dnp 2017-03-03 20:58:16

C'est à cause du nombre d'onglets ouverts dans le navigateur avec Réagir Natif Débogueur à Distance de l'INTERFACE utilisateur, onglet. J'ai également fait face au même problème.

Pour surmonter ce message d'avertissement, vous pouvez utiliser une méthode parmi les suivantes:

  • Ouvrez un onglet de navigation privée puis collez http://localhost:8081/debugger-ui sur la barre d'adresse et appuyez sur Entrez . Enfin, rechargez l'application (Commande + R) .

  • Fermez tous les onglets du navigateur. Gardez seulement 1 onglet ouvert puis appuyez sur http://locahost:8081/debugger-ui puis rechargez l'application (Commande + R) .

3
répondu hygull 2018-03-22 03:12:58

Comme mentionné par @jakeforaker dans l'un des commentaires. L'avertissement a disparu en ouvrant simplement le débogueur distant dans une fenêtre séparée au lieu d'un onglet dans votre fenêtre existante de votre navigateur (vous devez cependant recharger votre simulateur).

Comme l'avertissement dit garder le débogueur distant dans la même fenêtre que les autres onglets

Peut provoquer des applications à exécuter lentement

Donc je pense simplement supprimer l'avertissement comme mentionné par @kjonsson: - console.ignoredYellowBox = ['Remote debugger']; ne semble pas être meilleure solution.

2
répondu Ashish Pisey 2018-04-18 19:38:09

Je pense que la réponse acceptée n'est plus précise (au moins pour React Native v0. 57+).

Le code correct est maintenant:

import { YellowBox } from 'react-native';
YellowBox.ignoreWarnings(['Remote debugger']);

Référencez-le à partir des documents natifs officiels React:

Https://facebook.github.io/react-native/docs/debugging.html

1
répondu Stud Sterkel 2018-08-30 16:39:41

J'ai eu le même problème hier. Googler cela a conduit à ce Post de débordement de pile . Dans l'une des réponses (par adriansprod), il a suggéré:

Chrome debugger in it's own window fixes. But annoying problem

Il est probable que votre débogueur natif React ne se trouve pas dans sa propre fenêtre de navigateur Chrome, mais dans un onglet de navigateur Chrome. Tirant comme sa propre fenêtre, comme adriansprod suggèrent, fixé pour moi.

0
répondu alee8 2016-12-17 07:30:47

Le message d'erreur (très ennuyeux) est géré par debuggerWorker.js, ce qui n'inclut malheureusement aucune option de configuration pour désactiver le message. Donc, pour le moment, il n'y a aucun moyen de configurer votre application pour désactiver le message.

Le code connexe est décrit ci-dessous ( licence originale s'applique):

var visibilityState;
var showVisibilityWarning = (function() {
  var hasWarned = false;
  return function() {
    // Wait until `YellowBox` gets initialized before displaying the warning.
    if (hasWarned || console.warn.toString().includes('[native code]')) {
      return;
    }
    hasWarned = true;
    console.warn(
      'Remote debugger is in a background tab which may cause apps to ' +
      'perform slowly. Fix this by foregrounding the tab (or opening it in ' +
      'a separate window).'
    );
  };
})();

Comme vous le voyez, aucune option de configuration n'est utilisée, le tout est désactivé localement (voir le lien repo ci-dessus pour plus de détails).

0
répondu Nit 2016-12-18 17:07:34

J'ai aussi fait face au même problème il y a environ une semaine et finalement j'ai trouvé une solution qui fonctionne très bien pour moi

On appelle reactotron, vous pouvez le trouver ici - https://github.com/reactotron/reactotron et vous pouvez l'utiliser pour:
* afficher l'état de votre application
* afficher les demandes et réponses API
* effectuer des benchmarks de performances rapides
* abonnez-vous à des parties de l'état de votre application
* Afficher des messages similaires à la console.log
* suivre les erreurs globales avec traces de pile mappées à la source, y compris les traces de pile saga!
* envoyer des actions comme une expérience de contrôle de l'esprit gérée par le gouvernement
* hot swap état de votre application
* suivez vos sagas

J'espère que mon message a été utile et que vous ne serez jamais confronté à cet avertissement fastidieux .

Bonne chance

0
répondu Probojnik 2017-01-03 19:53:42