我正在使用谷歌地图 API 和 geoxml3 加载大型 KML 图层,通过parseKMLString
.
在将这些文件渲染到地图时,UI 被冻结。由于这是使用谷歌地图,我不能将此代码放入 Worker 中,并且将其包装在 Promise 中不会改变任何东西。
相关代码块:
var latLong = new google.maps.LatLng(37.0902, -95.7129);
var myOptions = {
center: latLong,
zoom: 10
};
myMap = new google.maps.Map(document.getElementById('map-canvas'), myOptions);
geoXmlParser = new geoXML3.parser({
map: myMap ,
singleInfoWindow: true
});
geoXmlParser.parseKmlString("long-kml-string", geoXmlParser.docs);
我也对加载这些文件和可能存在的其他库提供帮助的替代方案持开放态度。