2017-02-01 94 views

回答

0

通过定义枚举开始关闭...

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? 
} 
相关问题