Leaflet Map容器​​已经初始化

时间:2018-12-04 16:31:34

标签: javascript html function leaflet

我使用经典的JS将LeaFlet MAP显示为```

function getMap(latitude,longitude){
    var osmUrl='https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
    var osm = new L.TileLayer(osmUrl, {minZoom:2, maxZoom:19}); 
    var googleStreets = new L.tileLayer('https://{s}.google.com/vt/lyrs=m&x={x}&y={y}&z={z}',{minZoom:1, maxZoom:19, subdomains:['mt0','mt1','mt2','mt3']});
    var googleSat = new L.tileLayer('https://{s}.google.com/vt/lyrs=s&x={x}&y={y}&z={z}',{minZoom:1, maxZoom: 21,subdomains:['mt0','mt1','mt2','mt3']});
    var map = new L.Map('mapDiv', { doubleClickZoom:false, zoomControl:false, maxBounds:([[90,-270],[-90,270]]) });
    L.control.layers({"OSM (Mapnik)": osm, "Google Street": googleStreets, "Google Earth": googleSat}).addTo(map);
    map.addLayer(osm);
    var map_set = "osm";
    map.setView(new L.LatLng(latitude,longitude),zoom);
}

在按钮上我叫getMap(latitude,longitude),它工作正常 但是,如果我再次调用(使用新坐标)却收到错误消息,则地图容器已经初始化。

现在,我了解到我需要使用map.setView(new L.LatLng(latitude,longitude),zoom);的新功能,但随后得到未定义的地图。我需要一个产品来定义地图“全局”,并通过函数和一个单独的函数最终进行初始化,以在地图上显示一个点。谢谢帮忙!

0 个答案:

没有答案