2017-04-23 63 views
1

我有一個Angular 2 TypeScript項目。我已經更新了所有的軟件包並構建了該項目。如何調試zone.js異常?

現在我在控制檯中看到此錯誤:

zone.js:1265 Uncaught TypeError: Cannot read property 'apply' of undefined 
    at XMLHttpRequest.desc.get [as ontimeout] (zone.js:1265) 
    at XHRLocalObject.AbstractXHRObject._cleanup (abstract-xhr.js:149) 
    at XMLHttpRequest.xhr.onreadystatechange (abstract-xhr.js:125) 
    at XMLHttpRequest.wrapFn (zone.js:1230) 
    at ZoneDelegate.invokeTask (zone.js:398) 
    at Zone.runTask (zone.js:165) 
    at XMLHttpRequest.ZoneTask.invoke (zone.js:460) 

所以我不能找出其中的錯誤是在項目的代碼,因爲在堆棧跟蹤沒有項目代碼。在開始時有很多HTTP請求。他們都成功了(在網絡標籤中沒有錯誤),但我看到實際上沒有數據:沒有內容<select>。我想避免必須通過我的代碼,刪除它的一部分,並測試錯誤是否仍然存在。

有什麼方法可以找出我的代碼在哪裏導致這個錯誤?

+1

將zonejs降級至0.8.5 https://github.com/angular/angular-cli/issues/6036 – yurzui

回答

0

您所描述的是Zone.js v0.8.8中的最新問題。請參閱GitHub issue。要避免這種情況,最簡單的方法是降級到0.8.5版本。

要做到這一點,使用NPM,只是使用這個命令:

npm install [email protected] 

,並考慮在命令的末尾添加--save將其添加到您的JSON的依賴。

0

亞歷山大是正確的:檢查你的package.json,如果有這樣的事情在那裏:

... 「zone.js」: 「^ 0.8 ....」

更改版本低於0.8.8。這爲我修好了。