Начните с определения вашего перечисления ...
MessageType.js
sap.ui.define([], function() {
"use strict";
return {
Unread: "Unread",
Read: "Read"
};
});
Далее, отметьте это перечисление в качестве зависимости в пользовательском элементе управления, так что вы можете подтвердите значение.
MyControl.js
sap.ui.define(["sap/ui/core/Control", "/path/to/MessageType.js"], function(Control, MessageType) {
Control.extend("myControl", {
someMethod: function(sMessageType) {
// Validate if we are dealing with a valid message type
var aKeys = Object.keys(MessageType);
var bValidEnumValue = aKeys.some(function(sKey) {
if (MessageType[sKey]) {
return true;
}
});
// Do other stuff..
}
});
});
Конечно способ проверить, если вы имеете дело с могут быть реализованы по-разному в зависимости от того, что вы пытаетесь сделать допустимым значением перечисления.
if (sMessageType === MessageType.Read) {
// do something
} else if (sMessageType === MessageType.Unread) {
// do something else
} else {
// throw an error?
}