2

我正在为 UI5 开发一个组件。在 metadata->properties 部分,我想定义一个整数类型的属性。如果我通过"markerSize" : {type:"integer",defaultValue:"25"}(或任何其他变体,如整数、数字、数字)设置数据类型,我会收到错误消息,即“in”无法访问 50(当前值)。将数据类型更改为字符串正在工作。在 SAP 的示例中,我只能找到“ string”和“ sap.ui.core.CSSSize”作为数据类型。如何定义数值?是否有支持的数据类型列表及其正确定义?

KR,尼科

4

1 回答 1

4

如果您使用 int 作为数据类型,那么您的 defaultValue 不应该是字符串(尽管它不会导致错误......)。你的问题是你必须使用“int”而不是“integer”。所以请在这里试试这个:

{ type:"int",defaultValue: 25 }

那应该行得通。这段代码对我有用:

<script>

    sap.ui.core.Control.extend("my.Control", {
        metadata : {
            properties : {
                "text" : "string",
                "size" : {type: "int", defaultValue: 500 }
            },
        },

        renderer : function(oRm, oControl) {  
            oRm.write("<div>size = "+oControl.getSize()+"</div>") 
        }

    });

    var myControl = new my.Control({text:"Hello"});
    myControl.placeAt("content");        
</script>    

<body class='sapUiBody'>
    <div id='content'></div>
</body>

我希望这会有所帮助。

于 2013-11-27T22:59:04.143 回答