2017-02-01 93 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? 
} 
相關問題