所以情况就是这样:我有一个名为 Map 的班级,这是 GMapPanel 的孩子。我想根据通过JSON加载到 MapIncidents 中的数据在地图上放置标记。现在,我知道在 Map 初始化期间我无法做到这一点,因为 MapIncidents *中的JSON请求是异步的,因此还没有准备好。因此,我在突发事件中添加了地图的监听器,这样当数据加载时,它会在地图中执行一个方法来添加标记到地图。为了使事情变得更加复杂,我还使用了一个名为 markerclusterer 的类,在缩小时将聚类添加到地图中。
现在我有代码完成所有这些,但是出于某种奇怪的原因它似乎是在添加双标记,即聚类表示有2个标记正好在彼此之上。
不知道我做错了什么,所以我很感激这里有点帮助。我会把我的代码粘贴在一些pastebins中。
Map.js(view) - > http://pastebin.com/9xtBYYKt
MapIncidents.js(商店) - > http://pastebin.com/uJnHkBSm
Incidents.js(控制器) - > pastebin.com/tjEc2xT5
GMapPanel.js(稍加修改) - > pastebin.com/W7LTxV9s
markerclusterer.js(取自谷歌放大器) - > pastebin.com/SiUkLhW2
Incident.js(模特)
Ext.define('SF.model.Incident', {
extend: 'Ext.data.Model',
fields: ['incident', 'lat', 'lng']
});