在Openlayers 3中缩放到图层范围

时间:2015-09-30 11:12:06

标签: javascript if-statement openlayers-3

我有一个应用程序编号的下拉列表,当用户点击其中一个时,我希望我的应用程序在我的应用程序层中在地图上显示该功能,然后缩放到它的范围。

该功能正确显示但我似乎无法缩放到图层的范围,我收到错误:

未捕获的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());
  }

感谢您提供任何帮助!

0 个答案:

没有答案