在node.js中构建可扩展的可链接模块

时间:2014-03-31 03:44:12

标签: javascript node.js

我正在尝试构建一个node.js模块,我可以在其中扩展我的模块(如jquery插件),并使这些插件的功能可链接。

根据我的理解,如果我从模块返回更新的对象,它们应该是可链接的。 (我从这里得到http://javascriptissexy.com/beautiful-javascript-easily-create-chainable-cascading-methods-for-expressiveness/

到目前为止,这就是我所拥有的,而且我不确定我哪里出错了。

我用

构建我的对象
 var my_obj = new MyObj(json_obj);
    var modules = ['get_and_set']; // an array for plugins to be included

    MyObj.prototype.core_function = function(){
    // does something and returns 
    }

    if(modules){
      modules.forEach(function(module){
       MyObj.prototype = require(module);
    });
    }

   // then I export my module
 module.exports = my_obj(json_file);

然后,在我的子模块中,我导出了我试图添加到模块中的命名函数。

module.exports.get = function(){
     return this.value;
}

module.exports.set = function(x){ 
      this.value=x;
      return this;
}

当我运行测试时,节点会发出错误has no method gethas no method set

有没有更好的方法让我扩展MyObj而无需手动定义导出模块中包含的方法?我在做链接吗?

0 个答案:

没有答案