Я изменяю проект листовки так, что при изменении одного из файлов входных данных (data / Point_1.js) маркеры обновляются с новыми данными.
Я использую SetTimeout, чтобы перезагрузитьPoint_1.js, чтобы при изменении данных карта обновлялась.
Я могу отлично отобразить исходные данные, однако, когда я пытаюсь обновить их, я получаю сообщение об ошибке с неопределенными данными. Я надеюсь, что люди, которые могли использовать буклет, могли бы дать некоторые подсказки о том, что может быть неправильным.
статус устанавливается в значение true после загрузки исходных данных, это часть обновления кода. Он умирает в операторе bounds_group.addLayer (layer_Point_1).
if (status) {
// just refresh the data points here
layer_Point_1.clearLayers();
layer_Point_1 = L.geoJson(json_Point_1, {
attribution: '<a href=""></a>',
pane: 'pane_Point_1',
onEachFeature: pop_Point_1,
pointToLayer: function (feature, latlng) {
var context = {
feature: feature,
variables: {}
};
return L.marker(latlng, style_Point_1_0(feature));
},
});
bounds_group.addLayer(layer_Point_1);
map.addLayer(layer_Point_1);
} else {
//create the map and layer elements
map.createPane('pane_Point_1');
map.getPane('pane_Point_1').style.zIndex = 401;
map.getPane('pane_Point_1').style['mix-blend-mode'] = 'normal';
layer_Point_1 = L.geoJson(json_Point_1, {
attribution: '<a href=""></a>',
pane: 'pane_Point_1',
onEachFeature: pop_Point_1,
pointToLayer: function (feature, latlng) {
var context = {
feature: feature,
variables: {}
};
return L.marker(latlng, style_Point_1_0(feature));
},
});
bounds_group.addLayer(layer_Point_1);
map.addLayer(layer_Point_1);
var baseMaps = {};
L.control.layers(baseMaps,{'<img src="legend/Point_1.png" /> Point': layer_Point_1,"Imagery": overlay_Imagery_0,},{collapsed:false}).addTo(map);
setBounds();
var i = 0;
layer_Point_1.eachLayer(function(layer) {
var context = {
feature: layer.feature,
variables: {}
};
layer.bindTooltip((layer.feature.properties['OBJECTID'] !== null?String('<div style="color: #000000; font-size: 12pt; font-weight: bold; font-family: \'Univers LT Std 55\', sans-serif;">' + layer.feature.properties['OBJECTID']) + '</div>':''), {permanent: true, offset: [-0, -16], className: 'css_Point_1'});
labels.push(layer);
totalMarkers += 1;
layer.added = true;
addLabel(layer, i);
i++;
});
map.addControl(new L.Control.Search({
layer: layer_Point_1,
initial: false,
hideMarkerOnCollapse: true,
propertyName: 'Name'}));
document.getElementsByClassName('search-button')[0].className +=' fa fa-binoculars';
L.ImageOverlay.include({
getBounds: function () {
return this._bounds;
}
});
resetLabels([layer_Point_1]);
map.on("zoomend", function(){
resetLabels([layer_Point_1]);
});
map.on("layeradd", function(){
resetLabels([layer_Point_1]);
});
map.on("layerremove", function(){
resetLabels([layer_Point_1]);
});
}
}