it-swarm.com.de

Wie deaktiviere ich die Firefox-Konsole, um doppelte Ausgaben zu gruppieren?

Weiß jemand, wie man Firefox-Konsole vermeidet, um Protokolleinträge zu gruppieren?

Ich habe gesehen, wie es mit firebug https://superuser.com/questions/645691/does-firebug-not-always-duplicate-repeated-identical-console-logs/646009#646009 aber ich habe ' Es wurde kein Gruppenprotokolleintrag in about: config section gefunden.

Ich möchte Firebug nicht verwenden, da es nicht mehr unterstützt oder gewartet wird und ich die Firefox-Konsole wirklich mag.

Ich versuche es besser zu erklären, ich möchte, dass die Konsole alle Protokolle und nicht das rote Abzeichen mit der Anzahl der Vorkommen einer Protokollzeichenfolge druckt:

 enter image description here

Im obigen Bild hätte ich gerne zwei Zeilen der ersten Protokollzeile, zwei Zeilen der zweiten und drei der dritten.

Ist das möglich?

Danke im Voraus

21
amicoderozer

Wie ich im Kommentarbereich erwähnt habe, gibt es derzeit keine Möglichkeit, dies zu erreichen. Vielleicht sollten Sie versuchen, diese Funktion über Bugzilla @ Mozilla anzufordern.

Sie können auch Lücken zwischen Firebug und den Firefox DevTools prüfen

8
Mehdi Dehghani

Als Problemumgehung können Sie ein Math.random () an die Protokollzeichenfolge anhängen. Das sollte alle Ihre Ausgabenachrichten eindeutig machen, was dazu führen würde, dass sie alle gedruckt werden. Zum Beispiel:

console.log (Ihre Variable + "" + Math.random ());

3
DaveS

Obwohl Sie dies (ab August 2018) immer noch nicht tun können, habe ich eine Lösung, die möglicherweise Ihren Wünschen entspricht oder auch nicht.

Sie müssen etwas anderes/Einzigartiges für eine Zeile in der Konsole anzeigen, um die kleine Zahl zu vermeiden und eine einzelne Zeile zu erhalten.

Ich debugge etwas JavaScript.

Ich bekam "Return false" mit der kleinen blauen 3 in der Konsole, die drei falsche Ergebnisse in einer Reihe anzeigt. (Ich habe die "wahren" Ergebnisse nicht angezeigt.)

Ich wollte alle drei "falschen" Nachrichten sehen, falls ich noch viel mehr Tests machen würde.

Ich fand heraus, dass, wenn ich eine andere console.log-Anweisung einfügte, die jedes Mal etwas anderes anzeigt (in meinem Fall habe ich nur die Eingabedaten angezeigt, da sie relativ kurz waren), ich stattdessen separate Zeilen für jedes "Return false" erhalten würde eins mit dem kleinen 3.

Wenn Sie im folgenden Code das folgende Kommentar auskommentieren: "console.log (data);", erhalten Sie die Daten, gefolgt von "Return false" anstatt nur "false" einmal mit der kleinen 3.

Wenn Sie die zusätzliche Zeile in der Konsole nicht benötigen, können Sie auch beide Anweisungen in eine Zeile einfügen: "console.log (" Return false - "+ data);"

function(data){

   ...more code here...

    // console.log(data);
    console.log("Return false ");
    return false;
}

threeWords("Hello World hello"); //== True
threeWords("He is 123 man"); //== False
threeWords("1 2 3 4"); //== False
threeWords("bla bla bla bla"); //== True
threeWords("Hi"); // == False
1
user9209408

Um dies für jeden Browser zu lösen, können Sie Problemumgehung verwenden: Überschreiben Sie den Befehl console.log in window, um jede nachfolgende Zeile von der vorherigen zu unterscheiden.

Dazu gehört das Umschalten zwischen dem Voranstellen eines unsichtbaren Leerzeichens mit der Breite Null, dem Voranstellen eines Zeitstempels und dem Voranstellen einer Leinennummer. Unten finden Sie einige Beispiele:

(function()
{
    var prefixconsole = function(key, fnc)
    {
        var c = window.console[key], i = 0;
        window.console[key] = function(str){c.call(window.console, fnc(i++) + str);};
    };

    // zero padding for linenumber
    var pad = function(s, n, c){s=s+'';while(s.length<n){s=c+s;}return s;};

    // just choose any of these, or make your own:
    var whitespace = function(i){return i%2 ? '\u200B' : ''};
    var linenumber = function(i){return pad(i, 6, '0') + ' ';};
    var timestamp = function(){return new Date().toISOString() + ' ';};

    // apply custom console (maybe also add warn, error, info)
    prefixconsole('log', whitespace); // or linenumber, timestamp, etc
})();

Seien Sie vorsichtig, wenn Sie eine Protokollnachricht mit einem Leerzeichen der Breite Null kopieren.

0
Yeti