Тема: Refresh Treepanel
Показать сообщение отдельно
  #4 (permalink)  
Старый 16.04.2013, 14:45
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

вот кусок кода. здесь описан сторе

var peremen = 'my Prefix';
var store = undefined;
Ext.onReady(function(){
//------------------
store = Ext.create('Ext.data.Store',
    {
    fields: [
	'id', 
	'name',
	{
	name: 'firstName',
	convert: function(value, record)
	    {
	    return record.get('name') + peremen;
	    }
        }],
    idProperty: 'id',
    remoteSort: true,
    proxy:
	{
	type: 'ajax',
	url: '/getStore',
	actionMethods:
	    {
	    read: 'POST'
	    },
	reader:
	    {
	    root: 'data',
	    totalProperty: 'totalCount'
	    }
	},
    autoLoad: true,
    listeners:
	{
	load:
	    {
	    fn: function()
		{
		setTimeout(function()
		    {
		    if (store.count() > 0)//если записи есть
			console.log(store.getAt(0).data); //выводим объектом первую запись
		    }, 1000);
		}
	    }
	}
    });
//------------------
});


теперь посмотрите на функцию, которая выводит в консоль данные при загрузки объекта. смотрим в консоль.. и мы видим что 'firstName' реально существует. и если нужно данные обновить, то тут есть вариант перебрать всю стору циклом (например так):

for(var i = 0; i < store.count(); i++)
    store.getAt(i).set('firstName', 'newValue');

а в конце сделать commitChange();
может и есть метод который будет передергивать конверт, но я пока его не нашел))
Ответить с цитированием