我正在尝试访问此类的selectedObs属性:
qx.Class.define("edd.view.ObsToggleContainer", {
extend : qx.ui.container.Composite,
type: "singleton",
properties : {
selectedObs : { check: "Array"}
},
construct : function() {...
来自另一个类的:
var ObsToggle = edd.view.ObsToggleContainer.getInstance();
console.log(ObsToggle.getSelectedObs());
但它似乎不知道目前的价值是什么。我做错了什么还是有一些我不知道的逻辑?
感谢您提供任何帮助!
答案 0 :(得分:1)
我最后只是创建一个单独的类,只是一个qx.core.Object并使用它而不是单个Composite类,它似乎做了我想要完成的事情。
qx.Class.define("edd.data.DataStore", {
properties : {
checkedObs: {
init: [false, true, true, false, false, false, false, false, true, false, false, false],
check: "Array"
}
},
extend : qx.core.Object,
type: "singleton",
construct : function() {
var thisClass = this;
},
members :{
}
});
现在,这段代码正常运行:
var dataStore = edd.data.DataStore.getInstance();
var init_checked = dataStore.getCheckedObs();
答案 1 :(得分:1)
嗯。这里还有别的东西。就属性而言,您的初始课程定义和您自己答案中的定义并不相距甚远。也许在你的初级课程的其余部分,或者在使用它的代码中,出现了什么错误?!
查看此Playground sample,它使用您的初始类定义。您必须打开“日志”窗格才能查看输出。像魅力一样。
如果你能改变这个样本,并调整它直到它再现你的问题,那将是非常有趣的吗?!