1

我正在尝试在打字稿中使用 es6 语法扩展 OpenLayers 类。

我开玩笑地运行了一些测试来验证我的新类是 VectorLayer 实例。我已经能够使用 setSource 之类的方法,它们似乎可以在测试中使用。但是,当我将我的课程添加到地图时,它似乎不起作用(地图上没有预期的功能)。我从类的上下文中删除了这些特性,并以正常方式将它们添加到矢量图层,并且这些特性可以正常工作。


  export class GridLayer extends VectorLayer {
  constructor () {
    super()

    const axisX = new LineString([[0, 1000], [1000, 1000]])
    const axisY = new LineString([[1000, 0], [1000, 1000]])
    const featureX = new Feature({ geometry: axisX })
    const featureY = new Feature({ geometry: axisY })

    this.setSource(new VectorSource({
      features: [
        featureX,
        featureY
      ],
    }))
  }
}

预期,应该在地图上看到一些 LineString。实际上,地图上什么都没有。

4

1 回答 1

0

将类导入到地图所在的文件时,我在导入中犯了一个错误。Typescript 出于某种原因没有选择它。

不过这是可能的。很酷!

于 2019-07-01T18:05:45.517 回答