我想用按钮改变紧凑的密度。
onInit: function () {
this.getView().addStyleClass("sapUiSizeCompact");
},
运作良好。如果我在一个按钮中更改它,它就不起作用。
onOpenDialog: function (oEvent) {
var oDialog1 = new Dialog();
// ...
oDialog1.addButton(new Button({
text: "OK",
press: function () {
// How can I point to the view from inside this function?
}
}));
oDialog1.open();
},
如何从功能内部指向视图?
答案 0 :(得分:1)
我很惊讶你不得不问,因为它是基本的Javascript,真的......
自从press
调用oToggleButton
后,this
关键字现在包含对oToggleButton
的引用,不控制器(因此为什么getView()
方法失败)。在内部函数中搜索“此关键字”以获取更多信息。
要解决此问题,只需在内部函数外添加对此的引用:
var that = this;
并在您的内部函数中,改为使用引用:
that.getView().addStyleClass("sapUiSizeCompact");