我有一个应用程序编号的下拉列表,当用户点击其中一个时,我希望我的应用程序在我的应用程序层中在地图上显示该功能,然后缩放到它的范围。
该功能正确显示但我似乎无法缩放到图层的范围,我收到错误:
未捕获的TypeError:无法读取未定义的属性“0”
下面的相关代码在if语句中,最后两行似乎存在某种问题 - 是因为我无法将方法调用到地图图层,因为它是在同一时间创建的?我是否需要以某种方式延迟缩放?
if (name === "planning") {
var planapp = new ol.layer.Tile({
source: new ol.source.TileWMS({url: '../../geoserver/wms',
serverType: 'geoserver',
params:{
'LAYERS':"planning:planapps_testlayer", 'TILED':true, 'cql_filter':"applicatio='" + datum.APPLICATION_NUMBER + "'"
}
}),
name: 'planapp',
label: 'Planning Applications',
visible: true
});
map.addLayer(planapp);
var selectedAppExtent = planapp.getExtent();
map.getView().fit(selectedAppExtent, map.getSize());
}
感谢您提供任何帮助!