2017-02-24 47 views
-2

我有一個我正在使用module.export導出的錯誤類。類導出返回空對象

當我使用另一個文件中的類const Errors = require('errors.js');,然後嘗試使用throw Errors.NotImplimented我在throw開始得到undefined錯誤需要。

如果我嘗試和console.log Errors類需要它後,我顯示一個空的對象。

'use strict'; 

class Errors { 
    NotImplimented() { 
     return new Error('Not implimented'); 
    } 
    HTTP_500() { 
     return new Error('500 Internal Server Error'); 
    } 
    HTTP_404() { 
     return new Error('404 Page Not Found'); 
    } 
} 

module.export = Errors; 
+0

對於沒有實例狀態的東西,不應該使用'class'。只需使用簡單的對象文字即可。 – Bergi

回答

1

兩個問題。一,它不是出口。試試module.exports = Errors;

二,你沒有創建一個類的實例。嘗試const errors = new Errors();

此外(不是這個問題的情況下),你也可能會因爲通知要求而得到一個空對象,more here

+0

完全一樣的東西。從我所知道的出口是好的,如果你只出口一個單一的變種,對象等,你希望導出的項目是默認的。因爲一切都在錯誤類內,不應該改變任何東西。 –

+0

調用類似它的函數會改變一些事情。它必須首先被實例化。 –

+0

好的,這是工作。 –