Javascript 传单如何在同一图层组中组合图标和圆圈标记

Javascript 传单如何在同一图层组中组合图标和圆圈标记,javascript,arrays,object,leaflet,geocoding,Javascript,Arrays,Object,Leaflet,Geocoding,我有一堆坐标要添加到传单地图上。带有值“home”标记的坐标将获得一个类似home的svg图标,并存储在homeIcons变量中。所有其他坐标将获得一个圆形标记,并存储在名为圆形的变量中。我目前的方法只成功地将圆圈转化为一个合适的传单对象,而不是主页图标。因此,当我使用L.layerGroup()将它们组合成一个图层组时,“homeIcons”中的对象就会被删除。如果你看到我的代码有什么问题,请告诉我。谢谢大家! var circles = []; var homeIcons =

我有一堆坐标要添加到传单地图上。带有值“home”标记的坐标将获得一个类似home的svg图标,并存储在
homeIcons
变量中。所有其他坐标将获得一个圆形标记,并存储在名为
圆形的变量中。我目前的方法只成功地将
圆圈
转化为一个合适的传单对象,而不是
主页图标
。因此,当我使用
L.layerGroup()
将它们组合成一个图层组时,“homeIcons”中的对象就会被删除。如果你看到我的代码有什么问题,请告诉我。谢谢大家!

    var circles = [];
    var homeIcons = [];

    var markerOptions = {
      radius      : 10,
      fillColor   : 'yellow',
      color       : 'null',
      weight      : 1,
      opacity     : 1,
      fillOpacity : 0.8
    };

    var homeIcon = L.icon({
      iconUrl: 'public/imgs/home_icon.svg',
      iconSize     : [30, 30],
      iconAnchor   : [8, 18],
      popupAnchor  : [0, -15],
    });

    var homeMarker = L.marker([null, null], {icon: homeIcon, opacity: 1});

    for (var i=0; i<data.length; i++) {
      var pois = JSON.parse(data[i].POIs);

      for (var n=0; n<pois.length; n++) {
        homeMarker = {latlng:[pois[n].lat, pois[n].lng], name: data[i].Name}; 

        if (pois[n].poiTag == "home") {
        homeIcons.push(L.marker(homeMarker));
        } else {
        circles.push(L.circleMarker([pois[n].lat, pois[n].lng], markerOptions, {name: data[i].Name}));
        }
      }
    }

    console.log(circles);    // Outputs an array of leaflet objects
    console.log(homeIcons);  // Not outputing an array of objects with similar properties as leaflet objects

    var allLayers = L.layerGroup(circles, homeIcons);  // this is supposed to add both circles to homeIcons to the layergroup

    console.log(allLayers);  // By here, all the homeIcons have disappeared.

    cb(allLayers);

  }
var循环=[];
var homeIcons=[];
变量标记选项={
半径:10,
fillColor:'黄色',
颜色:“空”,
体重:1,
不透明度:1,
填充不透明度:0.8
};
var homeIcon=L.icon({
iconUrl:'public/imgs/home_icon.svg',
iconSize:[30,30],
iconAnchor:[8,18],
popupAnchor:[0,-15],
});
var homeMarker=L.marker([null,null],{icon:homeMarker,不透明度:1});
对于(var i=0;i您是否检查了您的“poiTag”激进分子/拼写是否正确?
你能提供数据的例子吗

if (pois[n].poiTag == "home") {
  homeIcons.push(L.marker(homeMarker));
 } else {
  circles.push(L.circleMarker([pois[n].lat, pois[n].lng], markerOptions, {name: data[i].Name}));
}