Skip to content

Commit 00aeb71

Browse files
修复webmap od 图不支持缩放至图层
1 parent 12fc838 commit 00aeb71

File tree

3 files changed

+32
-0
lines changed

3 files changed

+32
-0
lines changed

src/common/mapping/WebMapV2.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,8 @@ export function createWebMapV2Extending(SuperClass, { MapManager, mapRepo }) {
6161
super.cleanLayers(layers);
6262
this.echartslayer.forEach(echartLayer => {
6363
echartLayer.remove();
64+
echartLayer.features = null;
65+
echartLayer.id = '';
6466
});
6567
}
6668

@@ -1106,6 +1108,8 @@ export function createWebMapV2Extending(SuperClass, { MapManager, mapRepo }) {
11061108
options.GLMap = { roam: true };
11071109
const echartslayer = new window.EchartsLayer(this.map);
11081110
echartslayer.chart.setOption(options);
1111+
echartslayer.id = layerID;
1112+
echartslayer.features = features;
11091113
this.echartslayer.push(echartslayer);
11101114
this._addLayer({
11111115
id: layerID,

src/common/mapping/WebMapV2Base.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -495,6 +495,10 @@ export function createWebMapV2BaseExtending(SuperClass = Events, fireField = 'tr
495495
const options = this._createOptions(layerInfo, lineData, pointData, coordinateSystem);
496496
return options;
497497
}
498+
499+
getEchartsLayerById(layerId) {
500+
return this.echartsLayer.find(layer => layer.layerId === layerId);
501+
}
498502

499503
getDashStyle(str, strokeWidth = 1, type = 'array') {
500504
if (!str) {

src/common/overlay/l7/L7LayerBase.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,10 @@ export class L7LayerBase extends CustomOverlayLayer {
193193
type: parser.type,
194194
map: this.map
195195
};
196+
if (parser.extent) {
197+
sourceInfo.bounds = parser.extent;
198+
}
199+
let formatData = [];
196200
switch (parser.type) {
197201
case 'mvt':
198202
sourceInfo.type = 'vector';
@@ -202,6 +206,26 @@ export class L7LayerBase extends CustomOverlayLayer {
202206
sourceInfo.getData = () => layerSource.originData;
203207
sourceInfo.setData = this.setDataFn;
204208
break;
209+
case 'json':
210+
formatData = (layerSource.originData || []).map((feature) => {
211+
return {
212+
type: 'Feature',
213+
geometry: {
214+
coordinates: [feature[parser.x], feature[parser.y]],
215+
type: 'Point'
216+
},
217+
properties: {
218+
...feature
219+
}
220+
}
221+
});
222+
sourceInfo.getData = () => {
223+
return {
224+
type: 'FeatureCollection',
225+
features: formatData
226+
}
227+
};
228+
break;
205229
}
206230
return sourceInfo;
207231
}

0 commit comments

Comments
 (0)