I'm try to render a progress bar in grid (Ext JS), and get this error:
Object function has no method defer
What is this "magical" method? What does it do? And why is it not found? Code:
renderer: function (value, meta, rec, row, col, store){
var id = Ext.id();
(function(){
new Ext.ProgressBar({
renderTo: id,
value: 0.5
});
}).defer(25);
return '<span id="' + id + '"></span>';
}
I'm try to render a progress bar in grid (Ext JS), and get this error:
Object function has no method defer
What is this "magical" method? What does it do? And why is it not found? Code:
renderer: function (value, meta, rec, row, col, store){
var id = Ext.id();
(function(){
new Ext.ProgressBar({
renderTo: id,
value: 0.5
});
}).defer(25);
return '<span id="' + id + '"></span>';
}
Share
Improve this question
edited Apr 17, 2011 at 9:52
Tommi
8,6085 gold badges33 silver badges51 bronze badges
asked Apr 16, 2011 at 19:17
KeinKein
9962 gold badges14 silver badges33 bronze badges
3 Answers
Reset to default 10The function defer
is used to delay a function call by X milliseconds. Try a syntax like this:
Ext.Function.defer(function(){
new Ext.ProgressBar({
renderTo: id,
value: 0.5
});
}, 25);
That should work according to ExtJS API documentation.
Which version of ExtJS are you using?
Are you sure you have all the ExtJS loaded? Do you get the same error when you run this code from browser mand line:
(function(){alert("Hello");}).defer(1000);
Ext.defer or Ext.function.defer is a function similar to javascript setTimeout function.
http://astutejs.blogspot.in/2015/06/extjs-what-is-extdefer.html