我正在为我的openlayers映射搜索一些更改侦听器。
对于一个没有经验的Angular人员,我不确定我是否应该绑定div更改,或者,我不知道如何绑定的部分,直接绑定映射?在这种情况下,如果没有任何元素可以设置(change(或(ngModel(或类似的元素,我该如何调用我的函数?
正在通过调用以下函数的单元创建映射:
createOpenLayersMap(){
this.map = new Map({
target: 'hotel_map',
layers: [new TileLayer({
source: new OSM()
})],
view: new View({
center: olProj.fromLonLat([this.lng, this.lat]),
zoom: 7
})
});
this.crForm = this.fb.group({
crControl: [1],
crEndControl: [1]
});
}
地图目标是div by id'hotel_map':
CSS:
#hotel_map {
height: 100%;
width: 100%;
}
HTML:
<div id="hotel_map" (change)="getZoom()"></div>
打字功能:
zoomLevel: any = '';
getZoom(){
this.zoomLevel = this.map.getView().getZoom();
console.log(this.zoomLevel)
}
现在我需要知道缩放参数,它将用来改变圆半径。
如有任何解决方案和建议,请提前感谢!
this.map.getView().on('change:resolution', () => {
this.zoomLevel = this.map.getView().getZoom();
console.log(this.zoomLevel)
})
只要听";更改:分辨率";