2016-04-28 8 views
3

Ich konnte keine Haltepunkte innerhalb von Popup-Fenstern erhalten, die von dieser Funktion betroffen sind. Dies scheint der Grund dafür zu sein, dass das Feature erstellt wurde.Wie soll "automatisches Öffnen von DevTools für Popups" funktionieren?

Ich habe einen Online-Testfall erstellt (ich kann mir keinen anderen Weg vorstellen, da es mehrere Dateien und ein Popup beinhalten würde, aber wenn jemand einen Vorschlag hat, könnte ich vielleicht die Frage verbessern) . Gehe zu:

http://www.inonit.com/chromium/issue-410958/index.html

, die einen Index Seite lädt, die ein Popup-Fenster mit einem eingebetteten Skript hat. Wenn ich DevTools öffne, aktiviere die Option und klicke auf die Schaltfläche, um das Popup zu erstellen, es öffnet tatsächlich das Popup mit geöffneten DevTools. Aber jetzt, wenn ich gehe und setzen Sie einen Haltepunkt in popup.js in Zeile 2, und schließen Sie das Popup, und klicken Sie auf die Schaltfläche, um das Popup erneut zu öffnen, der Haltepunkt nicht getroffen wird.

Ist das die Absicht? Während ich die Chromium issue und ihre Kommentare lese, scheint es, als ob mein Haltepunkt ausgelöst werden sollte, da dies ein wesentlicher Teil der Motivation hinter dieser Funktion zu sein scheint.

+0

Dies ist immer noch wahr, wie von Chrome 61. –

Antwort

1

Ich gehe davon aus, dass Sie Chrome mit dem --auto-open-devtools-for-tabs Flag ausführen.

Meine Vermutung ist, dass es nach dem Öffnen von DevTools einige Zeit braucht, um alle vorherigen Breakpoints neu zu erstellen.

Event Listener Breakpoints scheinen jedoch schnell genug erstellt zu werden. So können Sie Chrome anweisen, die erste Anweisung eines ausgewerteten Skripts anzuhalten. Wenn Sie danach auf Fortsetzen klicken, wird der zuvor erstellte Zeilenumbruchspunkt erreicht.

Break on first statement

+0

Ich bin nicht mit dieser Flagge laufen, sondern mit der DevTools Einstellung. Sie bieten eine hervorragende Problemumgehung, die auf dem von mir bereitgestellten Testfall funktioniert. (Ich kann mir vorstellen, dass es an einem großen Beispiel scheitern könnte, weil es sehr viele Breakpoints geben würde, wenn Sie bei jedem Skript kaputt gehen würden.) Ich kann das zugrundeliegende Problem immer noch nicht herausfinden (und hoffe immer noch, es herauszufinden)). –

Verwandte Themen