我在使用用 dojo/_base/declare 创建的 Dojo 类对象时遇到了一些概念问题。
我创建了以下模块:
define(["dojo/_base/declare", ....], function(declare,....){
return declare('my.widget', null ,function(..){
startup: function() {
....
new Button({onClick: this.newItem}, newButtonNode)
},
newItem: function() {
this.openDialog({}, this.saveItemCallback)
},
openDialog: function(item,callback){...},
saveItemCallback: function(item){....}
})
})
问题是,该函数newItem
不起作用,因为当从按钮单击调用它时,它this
指向 Button 小部件,而不是“my.widget”实例。
我很困惑。如何引用“my.widget”实例?在我读过的 Dojo 类中,当前实例在this
.