在整个网页中访问leafletjs对象

时间:2017-08-09 08:02:46

标签: javascript leaflet

花了几个小时浏览文档,在这里搜索并查看" L"对象返回了,我不知道如何在我的代码中引用我的leafletjs地图进行修改,添加图层,标记等。

我得到了如何销毁初始引用以节省内存,但是我怎样才能引用我的传单地图并添加/删除标记,图层,设置样式,适合边界等等。创建

    var layers=[];

var leafletMap = new L.map('mmp', { zoomControl: false, preferCanvas: true }).setView([51.505, -0.09], 13);

L.tileLayer('https://cartodb-basemaps-{s}.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png', {
    maxZoom: 18, attribution: '&copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>, &copy;<a href="https://carto.com/attribution">CARTO</a>'
}).addTo(leafletMap);

var myGeojSonLayerGroup = L.geoJson(worldCountries.features, {
    onEachFeature: myOnEachFeature,
    style: myStyle
}).addTo(leafletMap)


function myOnEachFeature(feature, layer) {
    var props = feature.properties;
    var ni = {}
    ni.name = props.name;
    ni.layer = layer
    leafletLayers.push(ni);
}
$('#mmp').data('layers',layers)

使用上面我可以在我的代码中为各个国家着色,但我不能调用leafletMap.fitBounds,因为leafletmap不再可用,即使它是作为全局变量创建的。

有没有可能解决这个问题?

0 个答案:

没有答案