我在使用用 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.