【问题标题】:SAP UI5 Component development metadata datatypesSAP UI5 组件开发元数据数据类型
【发布时间】:2013-12-13 04:35:33
【问题描述】:

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

韩国, 妮可

【问题讨论】:

    标签: sapui5


    【解决方案1】:

    如果您使用 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>
    

    希望对你有帮助。

    【讨论】:

    • 谢谢!解决了问题。
    • 我还有一个问题:其他数据类型呢?数组还是浮点数?
    • 您可以在 UI5 文档中阅读此内容:属性至少由其名称和类型定义。此外,可以定义属性的默认值。因此可用的设置有: type:Control 属性的数据类型。自动类型验证在 UI5 核心中完成。有效类型的示例有:字符串属性(默认)的字符串,数字属性的 int 或 float,数组的 int[] 等,自定义类型的 sap.ui.core.CSSSize
    • @user3042011 确保突出显示正确答案以使其对其他用户可见。谢谢。
    • 抱歉迟到了...对于其他数据类型,您可以简单地查看我的 SAPUI5 教程,尤其是 this one
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多