Обновить список с помощью кнопки Sencha Touch - PullRequest
0 голосов
/ 22 ноября 2011

Я знаю, что эта тема обсуждалась ранее, но все еще возникают проблемы с обновлением моего списка кнопкой обновления после обновления StoreList ...

Вот мой обработчик:

function clac_distance() {

for (var i=0;i<mydata.length;i++) 
{
    //alert((coor[1].lat-lat)*(Math.PI/180));        
    var R = 6371; // km

    var dLat = (coor[i].lat-lat)*(Math.PI/180);
    var dLon = (coor[i].lng-lng)*(Math.PI/180);

    var lat1 = lat*(Math.PI/180);
    var lat2 = coor[i].lat*(Math.PI/180);

    var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
    Math.sin(dLon/2) * Math.sin(dLon/2) * Math.cos(lat1) * Math.cos(lat2); 

    var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 

    mydata[i].distance = (R * c).toFixed(2);


    //alert(mydata[i].distance);
}
    Toolbar.views.listPanel.update();
    Toolbar.views.listPanel.bindStore(ListStore);

}

1 Ответ

2 голосов
/ 23 ноября 2011

Ext.List прослушивает событие datachanged хранилища, к которому оно привязано, что означает, что компонент списка обновляется автоматически в соответствии с изменением в хранилище автоматически.Таким образом, правильный подход заключается в правильном изменении экземпляра модели в магазине:

ListStore.getById (id) .set (ключ, значение);

И хорошие вещипроизойдет :) 1009 *

...