aboutsummaryrefslogtreecommitdiff
path: root/files/fr/components.utils.reporterror/index.html
blob: ff028087925b7ff386b7a2babda2eab00e90ff78 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
---
title: Components.utils.reportError
slug: Components.utils.reportError
tags:
  - 'XPCOM:Liaisons_de_langage'
  - XPConnect
translation_of: Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.reportError
---
<p>
</p><p><code>Components.utils.reportError</code> reporte un objet d'erreur JavaScript vers la console d'erreurs JavaScript, et se termine. Vous pouvez l'utiliser dans des blocs de gestion d'exceptions pour « avaler » une exception, mais tout en conservant un report d'erreurs dans la console.
</p><p>Il doit être appelé avec un seul paramètre qui est habituellement l'objet capturé par l'exception. S'il ne s'agit pas d'un objet d'erreur JavaScript, le paramètre est converti en chaîne de caractères et reporté en tant qu'erreur. Vous pouvez ainsi utiliser <code>Components.utils.reportError</code> pour afficher des messages de débogage dans la console d'erreurs JavaScript, comme <a href="fr/DOM/window.dump">dump()</a> le fait dans un terminal.
</p><p>Cependant pour ces reports, vous devriez utiliser <a href="fr/NsIConsoleService">nsIConsoleService</a> qui affiche les messages avec une gravité normale, contrairement à <code>reportError</code>.
</p>
<pre class="eval">function myDump(aMessage) {
  var consoleService = Components.classes["@mozilla.org/consoleservice;1"]
                                 .getService(Components.interfaces.nsIConsoleService);
  consoleService.logStringMessage("Mon composant : " + aMessage);
}
</pre>
<h3 id="Exemples"> Exemples </h3>
<p>Utilisation dans un gestionnaire d'exception :
</p>
<pre class="eval">try {
  ceci.doit.lever.une.exception;
} catch(e) {
  Components.utils.reportError(e); // Reporter l'erreur et continuer l'exécution
}
</pre>
<p>Affichage de messages de débogage dans la console d'erreurs JavaScript :
</p>
<pre class="eval">Components.utils.reportError("init() appelée");
</pre>