2017-04-19 51 views
0

我有一個JavaScript的測試類如何創建一個javascript對象通過export.module導出?

var Test = function() { 
    var _object = {} ; 
    _object.url = null ; 
    return _object ; 
} 
exports.module = Test ; 

,我可以再導入通過

var Test = require('./test') ; 

當我做到這一點,但是我得到一個錯誤。

var test = new Test() ; 
TypeError: Test is not a constructor 

我期待有一個Test的測試實例,使得test.url將返回null。我將如何更改源代碼以便var test = new Test()在不引發錯誤的情況下工作?

+1

查看文檔:https://nodejs.org/api/modules.html。 –

回答

2

你要使用module.exports代替exports.module

你目前它編寫的方式,你可以參考你的測試對象,像這樣

var Test = require('./test'); 
var test = new Test.module(); 
0

這是因爲Test()是不可用

試試這個

var test = Test; 

你可以得到更多的細節here

1

你正在做
exports.module = Test;
那麼會從test出口是module因此,你將不得不

var test = require('./test'); var Test = new test.module();


如果要直接使用你的Test類然後你可以 module.exports = Test在你的test.js文件

然後你可以直接做
var Test = require('./test'); var test = new Test();
你在哪裏導入它。