如何获取 xml 控件属性

How to get the xml control attributes

本文关键字:xml 控件 属性 获取 何获取      更新时间:2023-09-26

我想在方法render中获取属性

sap.ui.define([
    "sap/ui/core/Control"
], function (Control) {
    "use strict";
    return Control.extend("sap.ui.test.control.IndexPageButton", {
        metadata : {
            properties: {
                value:  {type : "float", defaultValue : 0},
                name: "IndexPageButton",
                label: "Label"
            },
            events: {},
            aggregations : {}
        },
        init : function () {
        },
        renderer : function (oRM, oControl) {
            oRM.write("<div");
            oRM.writeControlData(oControl);
            oRM.writeClasses();
            oRM.write(">");
            oRM.write("<span");
            oRM.addClass("label");
            oRM.write(">");
            oRM.write("</span>");
            oRM.write("<span");
            oRM.addClass("counter");
            oRM.write(">");
            oRM.write("</span>");
            oRM.write("</div>");
        }
    });
});

.XML:

<test:IndexPageButton class="item" value="20" label="{i18n>homePageLink}" />

我想获取 attrs 值和标签,并将它们粘贴到渲染 sapn 中。

我是怎么做到的?

您可以通过控件各自的 getter 函数访问控件的属性。

对于元数据中定义的每个属性,框架会自动生成一个 getter 和一个 setter。

因此,您可以使用以下行访问 renderer 函数中的值和标签:

oControl.getValue();
oControl.getLabel();