我知道此主题之前已经讨论过,但在更新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);
}
答案 0 :(得分:2)
Ext.List
侦听它所绑定的商店的datachanged
事件,这意味着列表组件将根据商店中的更改自动更新。因此,正确的方法是正确更改商店中的模型实例:
ListStore.getById(id).set(key,value);
好事会发生:)