1
目前我有:节点模块和原型继承
index.js(模块FOO)
function Foo(options) {
this.memberVar = options.memberVar;
}
Foo.prototype.bar = function(word) {
console.log('word: ', word);
}
module.exports = Foo;
server.js(在单独的模块吧)
var Foo = require('foo'),
foo = new Foo(options),
greeting = 'Hello World!';
foo.bar(greeting); // prints Hello World!
这是很好除了我觉得它可能会更漂亮,更容易让别人理解,如果我不需要使用new关键字来实例化一个新的foo对象来公开其成员函数。
因此,这里是我想什么能够做到:
var greeting = 'Hello World!',
foo = require('foo')(options);
foo.bar(greeting); // prints Hello World!
如何修改我的当前富 - index.js能够访问Foo对象,如上面的代码段描述的?
你的例子可能是歪曲你的意图,因为它不使用OOP提供的上下文。如果你所有的模块都提供了不需要(每个实例可变)上下文的功能,那么就不需要追踪OOP。 –
是的,我同意我不需要在这个例子中的OOP,但这不是我的实际使用情况,只是一些快速的垃圾。 – Skam