【发布时间】:2017-06-08 06:39:12
【问题描述】:
假设我有一堂课
sap.ui.core.Control.extend("sap.my.MyButton", {
metadata: {
properties: {
"isButtonWithMenu": {
type: "boolean",
defaultValue: true
}
}
}
},
init: function () {
if (this.getIsButtonWithMenu()) {
this.myButton = this._createMenuButton();
} else {
this.myButton = this._createNormalButton();
}
var baseBox = new sap.m.FlexBox();
baseBox.addItem(this.myButton);
this.setLayout(baseBox);
}
现在我想将isButtonWithMenu 的值传递给我的init 方法,然后执行以下操作:
var myButton = new sap.my.MyButton({isButtonWithMenu: false});
但这不起作用,这意味着我没有在类中获得传递值。但是,当我更改 defaultValue 时,它确实起作用了,所以,这里出了什么问题以及如何实现我的目标?
【问题讨论】:
-
变量isButtonWithMenu设置在哪里?
-
我在对象创建期间将其设置为 false。据我了解,它应该在幕后应用并将属性设置为正确的值,我错了吗?
标签: javascript sapui5