如何启用点击率+滚轮以放大谷歌地图API


嗨,我

使用谷歌地图 API https://angular-maps.com/,我只想在按 ctrl + 滚动滚轮时进行缩放。阅读文档,我发现:

手势处理 此设置控制地图上手势的方式 处理。允许的值:

"合作"(双指触摸手势可平移和缩放地图。 地图不处理单指触摸手势。 "贪婪"(全部 触摸手势可平移或缩放地图。 "无"(无法平移地图 或通过用户手势缩放。 "自动"[默认](手势处理是 合作或贪婪,取决于页面是否 可滚动与否。类型: |||

默认值:自动

所以在我的代码中,我添加了:

<agm-map
    [latitude]="lat" 
    [longitude]="lng"
    [zoom]="zoom"
    [gestureHandling]="cooperative"
    [mapTypeControl]="true"
    [mapTypeControlOptions]="mapType"
    >

但是不起作用,它不要求我按 Ctrl 进行缩放。

设置[scrollwheel]="null"现在似乎有效。

实际上,这些答案的组合是有效的。

就我而言,我最初既没有[scrollWheel]也没有[gestureHandling] agm-map控制。

必须在 API v3.32+ 中同时设置[scrollWheel]="null"[gestureHandling]="'cooperative'",才能按预期工作。

作为旁注,设置特定的 API 版本是"中断"更改的廉价解决方法。 始终努力乘风破浪(即使只是在支持结束截止日期之前)。

用户 n0minal 在 AGM github 上解决这个问题

正如 Martti Käärik 所说,您可以使用:

[scrollwheel]="null"

[scrollwheel]="false"

作为年度股东大会地图的输入。两者之间的区别在于,第一个允许使用CMD +滚动或CTRL +滚动放大和缩小,并在页面滚动期间在地图上显示有关它的消息,第二个不显示任何消息,也不允许您使用滚动或CMD/CTRL +滚动进行缩放,但您也可以使用[zoomControl]="true"给出的按钮控制地图缩放。

如果您需要滚轮和其他输入的参考,可以在此处查看。

我在AGM聊天中找到了一个似乎可以解决此问题的答案。

在模块中将版本设置为 4,例如:

AgmCoreModule.forRoot({
  apiKey: 'your_key',
  apiVersion: "4"
}),

我自己没有尝试过,但它对该用户有效。试一试,如果它不起作用,请返回

您可以尝试添加下一个:

[gestureHandling]="'coopeative'" 

我的问题在 https://github.com/SebastianM/angular-google-maps/issues/1411 解决了

解决方案是:

AgmCoreModule.forRoot({
      apiKey: '-bQ',
      apiVersion: '3.31'
    }),

基本上降级地图 api 解决了这个问题,但不确定为什么。

不过,如前所述,不要忘记添加[gestureHandling]="'cooperative'"

最新更新