0

Ich baue eine mobile Anwendung mit Backbone, jquery und erfordern js. Ich versuche, den Zeitunterschied zwischen Seiteninit und onShow zu bekommen, aber es gibt keine richtige Ladezeit, da ich lazy loading mit require js mache, und die Anzahl der Lazy Loads in jeder onShow ist dynamisch. Kann mir jemand helfen, herauszufinden, wie viel Zeit die Seite benötigt, um alle geladenen Elemente in das DOM zu laden, einschließlich des Lazy Loads und anderer Event-Bindungen, wenn ich zum Beispiel in setTimeout arbeite? Vielen Dank im Voraus.Wie Laden der Seite Zeit für eine einzelne Seite Anwendung (SPA) mit Backbone, jquery, erfordern js?

+0

Seitenladezeitverlängerung für Chrome macht einen guten Job. Wenn Sie nach "Seitenladezeit" von Alexander Vykhodtsev suchen, sollten Sie es finden. – Icewine

+0

@Icewine Ich muss die Ladezeit dynamisch abrufen, wenn die Seite geladen und protokolliert wird. Es ist eine hybride mobile Anwendung, die auf iOS und Android läuft. Mir ist der Performance-Tab in Chrome bekannt, aber ich denke nicht, dass das in diesem Fall helfen kann. – sSD

Antwort

0

Sie können versuchen, mit console.time('Timer1') am Start, dann, wenn der Code, den Sie Zeit möchten, ist die Ausführung des Aufrufs console.timeEnd('Timer1') fertig und das wird den Timer-Wert so genau wie möglich konsolen.

+0

Also sagen Sie haben Sie mehrere erfordern js Seite laden in einem onShow() Ereignis, müssen wir in jedem gehen und eine console.log? Ich denke, das ist kein richtiger Weg und wird die Komplexität nur erhöhen, wenn die Anzahl der erforderlichen Seitenladevorgänge zunimmt. Außerdem ist die Seitenbindung, die mit require js durchgeführt wird, async, daher ist das Einfügen von Start- und Endzeit in console.log eine verwirrende Sache. – sSD

+0

Verwenden Sie requirej wirklich asynchron? Wenn Sie Ihre Module wie folgt definieren: define (['dep1', 'dep2', Funktion (dep1, dep2) {...}) 'oder wie diese 'define (function (require) {var dep1 = require ('bla/dep'); ...}) 'dann sagst du, dass du alle Abhängigkeiten laden musst, bevor dein Code ausgeführt wird. – vassiliskrikonis

+0

Nun, wenn Sie wirklich async benötigen wie diese 'require (['dep'], function() {// Erfolg Rückruf}) dann müssen Sie sorgfältig Ihre Rückrufe überwachen oder Versprechen zu verwenden, um ihre Entschlossenheit zu verfolgen. – vassiliskrikonis

Verwandte Themen