2016-05-27 4 views
1

У меня есть таблица, содержимое которой (имя и статус) я пытаюсь обновить каждые 1 мин таким образом, чтобы статус изменился с «расписания» на « active 'to' running 'без возможности вручную обновить его. здесь является ЯШ:Как автоматически обновлять содержимое таблицы в EXT.js

$cls.superclass.constructor.call(this, Ext.apply({ 
     useTemplate: true, 
     directFn: Service('getRecordService').getRecord, 
     fields: [ 
       { 
       name : 'name', 
       column: { 
        header: "Name", 
        renderer: function (record) { 
         return name(record.data.name); 
        }, 
       } 
      }, 

      { 
       name : 'status', 
       column: { 
        header: "status", 
        renderer: function (record) { 
         return status(record.data.status); 
        }, 
       } 
      }, 

     ], 
     viewConfig: { 
      getRecord: function(){ 
       ///get single record info 
      } 
     }; 

    }); 

Я не знаю, как я могу написать функцию в приведенном выше фрагменте кода, который позволит мне для автоматического обновления содержимого таблицы каждые 1 мин. Любые идеи были бы хорошы! Спасибо!

+0

Какая версия ExtJs вы используете? –

+0

@ And-y: Ext JS 3.4.0 – user1234

ответ

0

Вы должны взглянуть на Ext.util.TaskRunner и singleton Ext.TaskMgr. Он предоставляет методы для запуска/остановки функций задачи, которые выполняются в настраиваемом интервале.

С этим вы можете попробовать что-то вроде ниже.

var grid = ;     // your grid instance 
var store = grid.getStore(); // store of your grid, you want to reload 
var refreshTask = {    // task which reloads the store each minute 
    run: function() { 
     store.reload(); 
    }, 
    interval: 60 * 1000 // 1 Minute 
}; 

Ext.util.TaskRunner.start(refreshTask); 
Смежные вопросы