如何以编程方式将 Google 地图属性设置为“贪婪”,而无需在 JavaScript 中重新加载/重建地图?

Gre*_*ego 0 javascript google-maps-api-3

我在 javascript 中有以下代码,这是我的默认代码,我有一个按钮供用户更轻松地移动地图(无需使用双指/或 CTRL)我知道有一个名为的属性,gestureHandling: "greedy"但我不知道如何要使用 javascript 以编程方式设置它而不预设属性或重建/重构地图,我该怎么做?

map = new google.maps.Map(document.getElementById('map'), {
          zoom: 15,
          center: myLatLng,
          disableDefaultUI: true,
          mapTypeControl: false
});
Run Code Online (Sandbox Code Playgroud)

Lew*_*wis 5

将您的设置存储在一个对象中,并在需要在地图对象上使用setOptions()函数时应用它们;

// The Settings Object
let mapSettings = {
    zoom: 15,
    center: myLatLng,
    disableDefaultUI: true,
    mapTypeControl: false
}

// Your initial Map load
window.onload(function(){
    map = new google.maps.Map(document.getElementById('map'), mapSettings);
});

// Used when you want to apply different gesture handling
function greedyMap(){
    mapSettings.gestureHandling = 'greedy';
    map.setOptions(mapSettings);
}
Run Code Online (Sandbox Code Playgroud)
<button onclick="greedyMap()">Example</button>
Run Code Online (Sandbox Code Playgroud)