我试图将Openlayers控件类扩展为typescript中的自定义类。即使在进行super()
调用之后,我也无法访问超类方法,
import olControl from 'ol/control/control';
@Component({
selector: 'track-me',
template: require('./zoomhistory.html'),
//styles: [require('./map.scss')]
})
export class ZoomControl extends olControl {
static parameters = [];
constructor() {
let zoomCtrlButton = document.getElementById('trackme');
super({ element: zoomCtrlButton });
var self = this;
debugger;
self.setMap(this._map);
}
}
它将显示
property setMap() doesn't exist on type ZoomControl
,
无法编译。但是,当我将调试器和鼠标悬停在this
上时,可以从开发人员控制台看到setMap方法。有什么解决方法吗?
答案 0 :(得分:-1)
olControl
中将“ setMap”定义为公共方法self[“setMap”](this._map)
的身份访问此方法