我正在尝试使用打字稿中的es6语法扩展OpenLayers类。
我开玩笑地进行了一些测试,以验证我的新类是VectorLayer实例。我已经能够使用诸如setSource之类的方法,它们似乎可以在测试中工作。但是,当我将类添加到地图时,它似乎无法正常工作(地图上没有预期的功能)。我从类的上下文中删除了这些功能,然后按正常方式将它们添加到Vector Layer中,并且这些功能正常工作。
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。实际,地图上没有任何内容。
答案 0 :(得分:0)
将类导入到地图所在的文件时,我在导入时犯了一个错误。 Typescript由于某种原因没有选择它。
这是可能的。太酷了!