2013-11-27 6 views
2

Я разрабатываю компонент для UI5. В части metadata-> properties я хочу определить свойство типа Integer. Если я задаю тип данных на "markerSize" : {type:"integer",defaultValue:"25"} (или любые другие варианты, такие как Integer, Number, number), я получаю сообщение об ошибке, с которым 50 (текущее значение) не может быть достигнут с помощью «in». Изменение типа данных в строке работает. В примерах из SAP я могу найти только «string» и «sap.ui.core.CSSSize» в качестве типа данных. Как определить числовые значения? Есть ли список поддерживаемых типов данных с их правильным определением?SAP UI5 Типы метаданных разработки компонентов

KR, Нико

ответ

4

Если вы используете Int как тип данных, то ваш DefaultValue не должна быть строка (хотя это не вызывает ошибку ...). Ваша проблема в том, что вместо «integer» вы должны использовать «int». поэтому, пожалуйста, попробуйте это здесь:

{ 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> 

Я надеюсь, что это поможет.

+0

Спасибо! Решила проблему. –

+0

У меня есть еще один вопрос: А как насчет других типов данных? Массивы или поплавки? –

+0

Вы можете прочитать это в документации UI5: свойство определяется по меньшей мере его именем и его типом. Кроме того, можно определить значение свойства по умолчанию. Таким образом, доступны следующие настройки: Тип: Тип данных свойства Control. Автоматическая проверка типов выполняется в ядре UI5. Примерами допустимых типов являются: строка для свойства строки (по умолчанию), int или float для свойств числа, int [] и т. Д. Для массивов, sap.ui.core.CSSSize для пользовательского типа – cevou

Смежные вопросы