我在使用 Polymer 网络组件时寻找谷歌地图标记的点击事件。我看过这个SO question
但我的代码略有不同,可能会把事情搞砸。我在我的标记中使用了一个模板 is="dom-repeat",这样我就可以使用 places API 进行搜索。这是我的 <map-element></map-element>
代码.问题是我怎样才能得到 markerClicked
开火? on-google-map-marker-click
似乎不起作用:
<dom-module id="map-element">
<style>
google-map {
height: 200px;
width: 100%;
}
</style>
<template>
<iron-icon icon="icons:search"></iron-icon>
<input is="iron-input" bind-value="{{bindValue}}" value=" {{value::input}}">
<google-map-search map="[[map]]" query="[[bindValue]]" results="{{results}}"></google-map-search>
<google-map map="{{map}}" latitude="37.77493" disableZoom="true" longitude="-122.41942" fit-to-markers>
<template is="dom-repeat" items="{{results}}" as="marker">
<google-map-marker latitude="{{marker.latitude}}" longitude="{{marker.longitude}}" clickEvents="true" on-google-map-marker-click="{{markerClicked}}">
<h2>{{marker.name}}</h2>
<span>{{marker.formatted_address}}</span>
</google-map-marker>
</template>
</google-map>
</template>
<script>
Polymer({
is: "map-element",
markerClicked: function(e, detail, sender) {
console.log('google_map_marker_click');
}
});
</script>
</dom-module>
最佳答案
将clickEvents
更改为click-events
。带有驼峰命名法的属性转换为带有破折号 (docs) 的属性。
此外,从事件监听器中删除大括号。该语法在 0.5 中使用,但在 1.0 中不再使用 ( docs )。
<google-map-marker click-events="true" on-google-map-marker-click="markerClicked">
关于javascript - polymer 谷歌地图标记点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33193222/