3
我想使用qx-oo(Qooxdoo)作为OOP库。但是我被野外成员的奇怪行为困惑了。它看起来像一个类的所有对象之间共享字段,如静态成员。例如,该测试代码字段在Qooxdoo库中作为静态字段
qx.Class.define("com.BaseClass",
{
extend : qx.core.Object,
members:
{
_children: [],
getChildrenCount: function(){
return this._children.length;
},
addChild: function(child){
this._children.push(child);
}
}
});
var class1 = new com.BaseClass();
var class2 = new com.BaseClass();
showLog("class1.getChildrenCount() - " + class1.getChildrenCount())
showLog("class2.getChildrenCount() - " + class2.getChildrenCount())
class1.addChild("somechild");
showLog("class1.getChildrenCount() - " + class1.getChildrenCount())
showLog("class2.getChildrenCount() - " + class2.getChildrenCount())
会产生这样的日志
class1.getChildrenCount() - 0
class2.getChildrenCount() - 0
class1.getChildrenCount() - 1
class2.getChildrenCount() - 1
有没有办法做到这一点?
或者你可以建议另一个OOP-js-lib?
这是一个完整的example。
是的,谢谢。我在手册中跳过了重要的解释。 – arusland
@Christian这是一个美妙的答案,谢谢你! – blong