2016-02-23 57 views
-1

我不知道這是什麼時候開始的。節點JS似乎並沒有「尖叫」運行時錯誤,例如未定義的變量,指標越界等Node JS/Javascript無法處理錯誤

最近我留在代碼就像一個錯字,

con 
var sDate = 123; 

服務器運行良好但會以500個狀態碼迴應。在查看代碼後,我在代碼中發現「con」錯字。我是否因意外停止了NodeJS似乎停止報告這些錯誤?

+0

當不調用保存代碼的函數時,直到調用此函數纔會出現此錯誤。 – zangw

+0

嗨,事情是確實被調用的功能。我可以把'console.log('Hi')'放在「con」之前,Hi會打印,但它會卡在那裏。 – Zanko

+0

如果您對捕捉這些類型的問題感興趣,那麼您應該啓用[嚴格模式](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode)。 – James

回答

0

我固定的問題,

if (app.get('env') === 'development') { 
    app.use(function(err, req, res, next) { 

    res.status(err.status || 500); 
    next(err); 
    }); 
} 

我是不允許到的NodeJS回調到下一個中​​間件。最初,該應用只會嘗試在那裏呈現錯誤頁面。不過,由於我使用AngularJS,它不會自動呈現,所以我不得不使用「next(err)」。