使用其他对象的属性扩展对象

时间:2018-11-26 09:54:39

标签: sapui5

我想用新的自定义属性扩展Combobox和Multicombobox。我知道,我可以使用这样的元数据来做到这一点:

sap.ui.define([
    "sap/m/MultiComboBox"
], function(MultiComboBox) {
    var Box = MultiComboBox.extend("U9.MultiComboBox",{
        metadata: {
            properties: {
                filterType: {
                    type: "string",
                    defaultValue: "default"
                },  ...

对于组合框:

sap.ui.define([
    "sap/m/ComboBox"
], function(ComboBox) {
    var Box = ComboBox.extend("U9.ComboBox",{
        metadata: {
            properties: {
                filterType: {
                    type: "string",
                    defaultValue: "default"
                },  ...

由于我很懒惰,并且我有许多自定义属性,所以我不想重复自己,因此我想创建一个单独的对象,并使用该对象的属性扩展组合框。可能看起来像这样:

sap.ui.define([
    "sap/ui/base/ManagedObject"
], function(MO) {
    var Filterable = MO.extend("U9.Filterable",{
        metadata: {
            properties: {
                filterType: {
                    type: "string",
                    defaultValue: "default"
                },  ...

sap.ui.define([
    "sap/m/ComboBox","U9/Filterable"
], function(ComboBox,Filterable) {
    var Box = ComboBox.extend("U9.ComboBox",Filterable...

是否有可能获得类似的效果? 我有一个模糊的想法,我可以重写一个构造函数并在其中添加一些额外的代码。你知道这是否行得通吗?我可以使用openUI5源代码中的任何示例吗?

0 个答案:

没有答案