关于UI5组件的init方法的大多数文档意味着在覆盖它时调用超类的init方法:
sap.ui.commons.Button.prototype.init.apply(this,arguments);
但这不起作用。当调试和检查“sap.ui.commonds.Button”并分析原型时,没有init方法存在 - 所以当然也不适用。 SAP使用DataPicker执行此操作,但它也没有可用的init方法。
我做错了什么或者这是一种弃用的做法?
BR, 尼科
答案 0 :(得分:5)
来自UI5文档:
如果从另一个具有(或可能)init()方法的控件继承,则需要显式调用它...
由于Button控件到目前为止还没有init()函数(但在将来的版本中可能存在),我会这样做,以便将来安全:
if (sap.ui.commons.Button.prototype.init) { // check whether superclass has an init() method
sap.ui.commons.Button.prototype.init.apply(this, arguments); // call super.init()
}
希望这会对你有所帮助。