2017-04-12 74 views
0

我使用以下來檢測我的頁面何時完成加載,但它顯然是錯誤的。當document.readyState完成時,Angular還沒有執行:如何判斷所有Angular命令是否完全使用Javascript?

page.open(url, function (status) { 
function checkReadyState() { 
    setTimeout(function() { 
     var readyState = page.evaluate(function() { 
      return document.readyState; 
     }); 

     if ("complete" === readyState) { 
      // onPageReady(); 
      doRender(); 
     } else { 
      checkReadyState(); 
     } 
    }); 
} 

checkReadyState(); 

});

+0

您需要使用promises checkReadyState函數需要返回一個承諾 – Jester

+0

如果您需要在應用程序啓動後以角度運行某些內容,請將其放入.module('app')中運行 –

回答

0

我沒有得到確切的目的,但你可以使用角碼在$超時這僅僅得到全部執行完畢該特定角度頁面後執行,並通過其JavaScript代碼中定義的全球方法。 喜歡的東西這個 -

裏面JS文件 -

var callBack = function(){ 
    console.log('I have finished execution'); 
} 

內部角控制器 -

$timeout(function(){ 
    callBack(); 
}); 

如果不解決您的問題,請詳細說明了。

+0

我有一個Javascript程序那就是讀一個網頁。它需要知道網頁何時完全加載,包括頁面上的所有角度指令。 –

相關問題