我一直收到一个安慰错误:意外的令牌
我应该在哪里绑定才能使这个功能起作用?
this.Map = new Button({ //button is a control so dont worry if it doesn't make sense
text: "Map",
press: function(event){
pop.open(this._Map);
}
})
答案 0 :(得分:0)
你必须将它绑定到你的按下功能,如下所示:
function onPress(event){
pop.open(this._Map);
}
this.Map = new Button({
text: "Map",
press: onPress.bind(this)
})
或者你也可以使用这种方法:
var _this = this;
this.Map = new Button({
text: "Map",
press: function(event){
pop.open(_this._Map);
}
});
答案 1 :(得分:0)
当你使用new
关键字时,解释器会创建一个新的空对象并使用绑定到它的新对象调用构造函数(此处为Button)
所以构造函数中的“this
”关键字与this.map
由于您没有明确调用Button()
,因此您无法绑定它。
你可以这样做:
var self = this;
this.Map = new Button({
text: "Map",
press: function(event){
pop.open(self._Map);
}
})
答案 2 :(得分:0)