2017-06-14 256 views
0

我已经安装角谷歌地图与角4如何设置谷歌地图Angular2 - 谷歌 - 地图到2d

模板很简单:

<agm-map [latitude]="58.150587" [longitude]="7.978571" [zoom]="19" [mapTypeId]="'satellite'"></agm-map>

我得到的是一个很好的3d版本:0​​

我希望它是卫星视图。但我不想要3d效果。我想它是平的,2d,Like this

任何人都可以帮助我吗?

回答

1

我在我的应用程序中使用了该模块,并且显示的地图位于2D中。与您的代码,唯一的区别是[的mapTypeId]我没有:

<div class="map"> 
    <agm-map [latitude]="lat" [longitude]="lng" [zoom]="17"> 
     <agm-marker [latitude]="lat" [longitude]="lng"></agm-marker> 
    </agm-map> 
</div> 

有4个值可能[的mapTypeId]属性:

的路线图,这是你想要的(和一个默认如果不设置属性)

卫星,这是一个谷歌地球表示

混合动力车+地形但是我没有用过这些。


为了具有2D表示,删除该属性或改变其值为[的mapTypeId] =“‘路线图’”

编辑:离开前面的回答,因为它可能帮助其他人,但是您确切的问题的解决方案是波纹管:

您需要在您的AGM-地图标记添加一个mapReady事件

<agm-map [latitude]="lat" [longitude]="lng" [zoom]="17" [mapTypeId]="'hybrid'" (mapReady)="changeTilt($event)"> 

钍当谷歌地图完全初始化时,会触发事件。它会返回你的google.maps.Map实例。您需要创建一个私有属性才能存储它。

private _map: any; 

然后你就可以改变的属性,使用方法,你想:

changeTilt(map) { 
    this._map = map; 
    this._map.setTilt(0); 
} 

我想给一个巨大的感谢cholexa您作为该解决方案一个真正巨大的帮助(上angular2 -google-map gitter chat)

+0

谢谢,但我不想要路线图。我希望它是卫星,但在2d。喜欢这个。 https://i.stack.imgur.com/Gkr3J.png – Skvupp

+0

我不好理解你在做什么。我找到了[此文档](https://developers.google.com/maps/documentation/javascript/maptypes?hl=zh-CN#45DegreeImagery),指出您想要的是setTilt方法。 我想知道如何使用它与模块,但没有结果。不知道它是否仅仅不被支持,或者是否有特殊的合成使用(例如mapTypeControlOptions属性,你可以看到所有属性列表[here](https://angular-maps.com/api-docs/agm) -core/components/AgmMap.html)) – nvkfr

+0

还没有任何答案,..我看到你张贴在angular2-google-maps聊天上,我们将看到 你现在可以做的最好的事情是用[maxZoom]限制缩放级别(因为只有在达到某个缩放时才会出现倾斜效果)直到找到更好的答案。 – nvkfr