根据docs,Rectangle 类接受一个类型为 google.maps.RectangleOptions 的可选参数,该对象实际上包含边界、可编辑等属性。 p>
如果你像这样实例化一个新的 Rectangle 实例
rectangle = new google.maps.Rectangle({
bounds: bounds,
editable: true,
draggable: true
});
只有您定义的三个属性实际存在。此外,bounds 属性将是未定义的,因为它分配了一个不存在的边界变量。
很遗憾,Google 没有提供创建此类 RectangleOptions 对象的直接方法。
因此,正确的方法是创建一个新的通用对象,其中包含可用于 RectangleOptions 对象的所有属性,并将这些属性提供给 Rectangle 的构造函数。
var options = {
bounds: new google.maps.LatLngBounds(),
clickable: true,
draggable: false,
editable: false,
fillColor: '#FF0000',
fillOpacity: 1,
map: new google.maps.Map(""),
strokeColor: '#FF0000',
strokeOpacity: 1,
strokePosition: google.maps.StrokePosition.CENTER,
strokeWeight: 1,
visible: true,
zIndex: 1
}
var rectangle = new google.maps.Rectangle(options);
console.log(rectangle.bounds);