我在nodejs中写了一个模块,Test.js,代码打击
function Test() {
this.key = 'value';
}
Test.prototype.foo = function () { return 'foo'; }
module.exports = Test;
然后,在B.js
var Test = require('./services/Test');
var test = new Test();
console.log(test.foo());
不幸的是,我得到了"未定义的方法foo",
谁能告诉我发生了什么?非常感谢
答案 0 :(得分:0)
检查您的文件位置,它应该位于服务目录中。
答案 1 :(得分:0)
function Test() {
this.key = 'value';
}
Test.prototype.foo = function () { return 'foo'; }
module.exports = new Test();//Test;
var test = require('./services/Test');
console.log(test.foo());
您可以导出Test类的新对象。试试这个。 或者你可以使用非常棒的ES6 JavaScript。
答案 2 :(得分:-2)
在 Test.js 中尝试将module.exports移动到定义原型函数之前。
如下:
function Test() {
this.key = 'value';
}
module.exports = Test;
Test.prototype.foo = function () { return 'foo'; }