angular - 如何使用 Leaflet 和 OpenStreetMap 将 map View 重置回 Ionic 中的位置?

标签 angular typescript ionic-framework leaflet openstreetmap

现在我正在 Ionic v4 中开发一个基于位置的应用程序。现在我希望能够将 map View 重置回我的位置。我想我需要再次使用 setView 来实现此目的,但我不知道执行此操作的语法。

这是我迄今为止得到的所有相关代码:

home.page.html

<ion-content>
  <div class="home-button" (click)="centerMap()">
    <ion-icon name="navigate"></ion-icon>
  </div>
  <div id="map"></div>
</ion-content>

home.page.ts

centerMap() {
    this.mapService.backToCenter();
}

ma​​p.service.ts

loadmap(map) {
    this.map = map;
    this.map.locate({
        setView: true,
        maxZoom: 22,
        minZoom: 12
    })
    .on('locationfound', e => {
        const markerGroup = leaflet.featureGroup();
        const marker: any = leaflet
            .marker([e.latitude, e.longitude], {
                icon: positionIcon,
                zIndexOffset: -1000
            })
            .on('click', () => {
                console.log('Position marker clicked');
            });
        markerGroup.addLayer(marker);
        this.map.addLayer(markerGroup);
        this.loadMarkers(this.dropService.getDrops());
    });
    return this.map;
}
backToCenter() {
    console.log('Center Map');
}

有没有办法在点击按钮时触发新的setView

最佳答案

您可以将初始位置和缩放级别存储在变量中,并使用 map.setView 方法在单击按钮时返回到初始位置。

backToCenter(){
    map.setView([latitude, longitude], zoom);
}

关于angular - 如何使用 Leaflet 和 OpenStreetMap 将 map View 重置回 Ionic 中的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56322739/

相关文章:

javascript - 如何过滤来自 Firestore 数据库的数据

angular - Http 请求的加载指示器

typescript - 为什么 Action <"test", boolean> 扩展到 Action <"test", true> 的并集 |操作 <"test",假>

angular - 在返回 observable 之前操作数据

android - ionic +快车道 |安卓 "error: package android.support.v4.content does not exist"

angularjs - Ionic Cordova SQLite 插件错误无法读取未定义的属性 'openDatabase'

android - Cordova 插件文件路径 : Unable to resolve filesystem path

angular - 如何在 Angular 2 应用程序中正确调用 window.matchMedia()

google-app-engine - 将 Angular 2(快速入门应用)部署到 Google Cloud 平台

typescript - 如何在 Typescript 中使用 EventTarget