javascript - 如何获取xml控件属性

标签 javascript xml controls sapui5

我想在方法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();

关于javascript - 如何获取xml控件属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35600266/

相关文章:

.net - 为什么有些控件同时具有 BackgroundImage 和 Image 属性?

dtd - 如何声明多个元素共有的属性?

c# - 使用 WPF 浏览器控件时如何重叠 BeforeNavigate 2?

javascript - 'X'不是函数-Javascript中的错误

javascript - 控制台日志和警报不起作用

java - 从 dom 文档创建 json

c# - 如何在 c# .net CF 3.5 中使用 XmlDocument 向 xml 添加属性

c# - 从子窗体更改父窗体属性的正确方法是什么?

javascript - 从 iframe 中选择 iframe 的直接父元素

javascript - 如何在两个单独的 SVG 图像中填充多个相似的路径?