Можно ли установить для свойства компонента Ext JS (видимость, значение, ...) определенное значение, для смилара - jQuerys [.attr(attributeName, value)][1]
?
Я получаю имя компонента, имя свойства / атрибута и значение и должен обновить интерфейс.
Мое первое решение работает со «словарем» (да, я разработчик на c #), который вызывает правильный метод для данного атрибута и поддерживает видимость, значение, включено.
var methodMapper = {
"visibility" : function(comp, value) {
if(value == "true" || value == "on" || value == "1" || value == "visible")
comp.show();
else
comp.hide();
},
"value" : function(comp, value) {
comp.setValue(value);
},
"enable" : function(comp, value) {
if(value == "true" || value == "on" || value == "1" || value == "visible")
comp.enable();
else
comp.disable();
}
};
function receiveMessage(element, property, value) {
var func = methodMapper[property];
if(!func) return;
var comp = Ext.getCmp(element); // retrieve component
func(comp, value); // set property to value
}
Есть ли лучшее решение для установки свойства в компоненте? Я хочу расширить поддерживаемые свойства до ширины, высоты, перетаскивания, ....