我正在开发一个sails.js应用。我正在使用node v4.2.1
。我正在尝试编写一个应该在我的api中调用的类。
在我的控制器中,我写了
'use strict';
class Sample {
disp() {
return "hello world";
}
}
module.exports.Sample = Sample;
在我的api中,我正在尝试使用
//Included the class file above the controller.
//var Sample = require('../repositories/ExampleRespository.js');
test: function (req, res) {
var sample = new Sample();
}
Sample
似乎未定义。
我试过module.exports = Sample;
我仍面临同样的错误。
我做错了吗?
如果问题很愚蠢,请道歉。
答案 0 :(得分:3)
您导出Sample
作为默认值,因此您的导入应如下所示:
var Sample = require('../repositories/example.js');
test: function (req, res) {
var sample = new Sample();
...
}
要么是,要么将其导出为Sample
:
module.exports.Sample = Sample;
编辑:所以,要明确:
一个解决方案:
// example.js
...
module.exports = Sample;
// API file
var Sample = require('../repositories/example');
另一种解决方案:
// example.js
...
module.exports.Sample = Sample;
// API file
var Sample = require('../repositories/example').Sample;
答案 1 :(得分:0)
您的导出声明应为:
module.exports = Sample;
然后你将能够:
var Sample = require('../repositories/example');
注意:在require语句的末尾不需要.js。