Javascript Node.js中的可继承静态方法?
我的结构如下: 第一个文件:Javascript Node.js中的可继承静态方法?,javascript,oop,inheritance,node.js,Javascript,Oop,Inheritance,Node.js,我的结构如下: 第一个文件: Base = function() { }; Base.something = function() { return "bla"; }; if (typeof module !== 'undefined' && "exports" in module) { module.exports = Base; } 第二个文件: var util = require('util'), Base = require('./base.js'
Base = function() {
};
Base.something = function() {
return "bla";
};
if (typeof module !== 'undefined' && "exports" in module) {
module.exports = Base;
}
第二个文件:
var
util = require('util'),
Base = require('./base.js');
FooBar = function() {
};
util.inherits(FooBar, Base);
但是
FooBar。有些东西是未定义的。如何在node.js中继承静态方法?util.inherits在构造函数的原型上运行
您需要使用一个简单的mixin,通常称为extend。它基本上只是将一个(或多个)对象的所有属性复制到一个“目标”对象中。(在本例中,是构造函数)
如果您正在使用,则可以使用.extend(FooBar,Base)
util.inherits在构造函数的原型上运行
您需要使用一个简单的mixin,通常称为extend。它基本上只是将一个(或多个)对象的所有属性复制到一个“目标”对象中。(在本例中,是构造函数)
如果您正在使用,则可以使用.extend(FooBar,Base)代码>我找到了另一个更好的解决方案,因为我只使用一个库来实现相同的功能
这个图书馆是由Felix Geisendörfer编写的,他也在上写了一篇教程,但有点过时了。但这里有一个同样问题的工作示例:
var
oop = require('oop'),
Base = require('./base.js');
FooBar = function() {
oop.mixin(this, Base);
};
oop.extend(FooBar, Base);
我找到了另一个更好的解决方案,因为我只使用一个库来实现相同的功能
这个图书馆是由Felix Geisendörfer编写的,他也在上写了一篇教程,但有点过时了。但这里有一个同样问题的工作示例:
var
oop = require('oop'),
Base = require('./base.js');
FooBar = function() {
oop.mixin(this, Base);
};
oop.extend(FooBar, Base);
要导出Base中的静态函数,请添加:
module.exports=Base代码>
在Base.js内部。要导出Base中的静态函数,请添加:
module.exports=Base代码>
在Base.js.sweet内部,而不仅仅是使用\uux.extend(FooBar,Base)代码>甜蜜,而不仅仅是使用.extend(FooBar,Base)代码>亲爱的投票人,您能解释一下您的投票吗?亲爱的投票人,您能解释一下您的投票吗?