ОБНОВЛЕНИЕ: Включенные предложения @DmitryB. Намного лучше.
Знайте, что initComponent не будет ждать завершения вашего вызова ajax, он продолжит и завершит сборку компонента.
columns: [
...
{ xtype:'actioncolumn',
action: 'someaction',
hidden: true,
width:40 }
...
]
initComponent: function() {
var callback=function(hasPerm) {
if(hasPerm) {
this.down('[action=someaction]').show();
}
}
isGranted("users.delete",callback, this);
}
isGranted=function(perm, fv, scope) {
Ext.Ajax.request({
url: "/isgranted?perm="+perm,
method: 'POST',
success: function(result) {
var res=new Object();
res=Ext.JSON.decode(result.responseText);
fv.call(scope, res.success);
}
});
}