传单地图中的 Polymer 1.0 自定义元素不起作用

Polymer 1.0 custom element in leaflet-map not working

任何人都可以解释为什么以下 2 个片段没有相同的效果/我在第 2 个做错了什么:

工作中(得到地图上的标记):

<dom-module id="odl-map">
<template>
    <leaflet-map id="innerMap" style="width:100%;height:100%;" latitude="50.92062" longitude="13.34081" zoom="10">
        <leaflet-marker latitude="50.92062" longitude="13.34081"></leaflet-marker>
    </leaflet-map>
</template>
<script>
 Polymer({
     is: "odl-map",
     ready: function() {
         L.Icon.Default.imagePath="./public/components/leaflet/dist/images";
     }
 });
</script>

但是,如果我只是将传单标记替换为包含传单标记的自定义元素,则它不起作用:

<dom-module id="contact-map-item">
<template>
    <leaflet-marker latitude="50.92062" longitude="13.34081"></leaflet-marker>
</template>
<script>
    Polymer({
        is: "contact-map-item"
    })
</script>
</dom-module>
<dom-module id="odl-map">
    <template>
        <leaflet-map id="innerMap" style="width:100%;height:100%;" latitude="50.92062" longitude="13.34081" zoom="10">
            <contact-map-item></contact-map-item>
        </leaflet-map>
    </template>
    <script>
     Polymer({
         is: "odl-map",
         ready: function() {
             L.Icon.Default.imagePath="./public/components/leaflet/dist/images";
         }
     });
    </script>
</dom-module>

终于得到了一个非常干净的解决方案。问题是地图在完成加载时将自身填充为 "container"(leaflet-core.html,方法 registerMapOnChildren)。所以我必须将容器对象添加到我的 contact-map-item 并将其传递给标记:

<dom-module id="contact-map-item">
<template>
    <leaflet-marker container="{{container}}" latitude="50.92062" longitude="13.34081"></leaflet-marker>
</template>
<script>
    Polymer({
        is: "contact-map-item",
        properties: {container : Object}
    });
</script>
</template>