Data-driven styling

FeatureLayer 接口

google.maps.FeatureLayer 接口

一个接口,表示包含特定 FeatureType 地图项的地图层,其样式可被客户端替换,或附加事件。

featureType
类型FeatureType
与此 FeatureLayer 关联的 FeatureType
isAvailable
类型boolean
FeatureLayer是否可用,这意味着此地图是否提供数据驱动型样式(在 Google Cloud Console 地图样式中,有一个使用矢量图块的地图 ID)。FeatureLayer如果此政策设为 false 或 false,此 FeatureLayer 上的样式设置会还原为默认值,且不会触发事件。
BetadatasetId optional
类型string optional
FeatureLayer 的数据集 ID。仅当 featureTypeFeatureType.DATASET 时才存在。
style optional
FeatureLayerFeature 的样式。设置样式时应用样式。如果您的样式函数更新,您必须重新设置样式属性。对地图图块应用 FeatureStyleFunction 时,它必须返回一致的结果,并且应针对性能进行优化。不支持异步函数。如果您使用 FeatureStyleOptions,该图层的所有地图项都将使用同一 FeatureStyleOptions 设置样式。将样式设为 null 即可移除之前设置的样式。如果此 FeatureLayer 不可用,设置样式将不执行任何操作并记录错误。
addListener
addListener(eventName, handler)
参数
  • eventNamestring观察到的事件。
  • handler:用于处理事件的 Function 函数。
返回值MapsEventListener 生成的事件监听器。
将给定的监听器函数添加到给定的事件名称。返回此监听器的标识符,该标识符可与 event.removeListener 一起使用。
click
function(event)
参数
用户点击 FeatureLayer 时会触发此事件。

FeatureType 常量

google.maps.FeatureType 常量

特征类型的标识符。

通过调用 const {FeatureType} = await google.maps.importLibrary("maps") 进行访问。请参阅 Maps JavaScript API 中的库

ADMINISTRATIVE_AREA_LEVEL_1 表示国家/地区级别以下的一级行政实体。
ADMINISTRATIVE_AREA_LEVEL_2 表示国家/地区级别以下的二级行政实体。
COUNTRY 表示国家政治实体。
BetaDATASET 表示第三方数据集。
LOCALITY 表示合并的城市或城镇政治实体。
POSTAL_CODE 表示邮政编码,用于国家/地区内的地址邮寄。

FeatureStyleFunction typedef

google.maps.FeatureStyleFunction类型输入符

用于设置 FeatureLayer 样式的函数。

function(FeatureStyleFunctionOptions): (FeatureStyleOptions optional)

FeatureStyleFunctionOptions 接口

google.maps.FeatureStyleFunctionOptions 接口

传递给 FeatureStyleFunction 的选项。

feature
类型Feature
Feature 传递到 FeatureStyleFunction 中以设置样式。

FeatureStyleOptions 接口

google.maps.FeatureStyleOptions 接口

这些选项用于指定应如何在地图上修改 Feature 的样式。

fillColor optional
类型string optional
十六进制 RGB 字符串(如绿色表示“#00FF00”)。仅适用于多边形几何图形。
fillOpacity optional
类型number optional
填充不透明度介于 0.0 和 1.0 之间。仅适用于多边形几何图形。
strokeColor optional
类型string optional
十六进制 RGB 字符串(如绿色表示“#00FF00”)。
strokeOpacity optional
类型number optional
描边不透明度介于 0.0 和 1.0 之间。仅适用于线和多边形几何图形。
strokeWeight optional
类型number optional
描边宽度(以像素为单位)。仅适用于线和多边形几何图形。

功能界面

google.maps.Feature 接口

一个表示矢量地图图块地图项的接口。这些是 FeatureStyleFunction 的输入。请勿保存对特定 Feature 对象的引用,因为这样引用会变得不稳定。

featureType
类型FeatureType
FeatureFeatureType

PlaceFeature 接口

google.maps.PlaceFeature 接口

一个表示具有地点 ID 的地图项的接口,其中包含 FeatureType.ADMINISTRATIVE_AREA_LEVEL_1FeatureType.ADMINISTRATIVE_AREA_LEVEL_2FeatureType.COUNTRYFeatureType.LOCALITYFeatureType.POSTAL_CODE 类型的地图项。

此接口扩展了 Feature

placeId
类型string
继承featureType
fetchPlace
fetchPlace()
参数:无
返回值Promise<Place>
提取此 PlaceFeaturePlace。在生成的 Place 对象中,iddisplayName 属性将填充。显示名称将以最终用户在地图上使用的语言显示。(之后,通过常规的 Places API 启用和结算即可通过 Place.fetchFields() 请求其他字段。)请勿通过 FeatureStyleFunction 调用此方法,因为仅支持同步 FeatureStyleFunctions。如果提取 Place 时出错,promise 会被拒绝。

DatasetFeature 接口

google.maps.DatasetFeature 接口

表示数据集中的特征的接口。DatasetFeaturefeatureType 将始终为 FeatureType.DATASET

此接口扩展了 Feature

datasetAttributes
类型Object<string, string>
地图项属性的键值对映射。
datasetId
类型string
此功能所属数据集的 ID。
继承featureType

FeatureMouseEvent 接口

google.maps.FeatureMouseEvent 接口

此对象是从 FeatureLayer 上的鼠标事件返回的。

此接口扩展了 MapMouseEvent

features
类型Array<Feature>
此鼠标事件中的 Feature
继承domEventlatLng
继承stop