我正在开发一个Nodejs模块,它是一个函数,并在属性中返回一个带有函数的对象。如果我调用模块时没有任何参数返回错误(测试不是构造函数)。如果我调用模块传递参数,即使它是空的,它也能正常工作。
示例#1
(应用程序)
//var test = require('./index.js')().Test; // Works properly
var test = require('./index.js').Test;
var sample = new test('text', function(newText) {
console.log(newText);
});
(模块)
module.exports = function(options) {
var bold = 0;
var anotheModule = new anotherModule(options); //If the parameters are not defined, take the default.
console.log('Check 1');
return {
Test: Test
}
function Test(text) {
.....
}
}
示例#2
(模块)
module.exports = function textChange(options) {
var bold = 0;
var anotheModule = new anotherModule(options); //If the parameters are not defined, take the default.
console.log('Check 1');
}
textChange.prototype.Test = function(text) {
.....
}
示例#3
(模块)
function textChange(options) {
var bold = 0;
var anotheModule = new anotherModule(options); //If the parameters are not defined, take the default.
console.log('Check 1');
}
textChange.prototype.Test = function(text) {
.....
}
module.exports = textChange;
示例#4
(模块)
function textChange(options) {
var bold = 0;
var anotheModule = new anotherModule(options); //If the parameters are not defined, take the default.
console.log('Check 1');
}
Test = function(text) {
.....
}
module.exports = textChange;
export.Test = Test;
如果不传递参数,我无法使解决方案正常工作。没有传递参数,我无法使解决方案工作。如果应用程序使用参数调用模块,则它可以正常工作。