Javascript 传单未捕获类型错误:map.addLayer不是函数

Javascript 传单未捕获类型错误:map.addLayer不是函数,javascript,leaflet,markerclusterer,leaflet.markercluster,Javascript,Leaflet,Markerclusterer,Leaflet.markercluster,我在地图上创建了一个聚集json数据的函数,如下所示: 它位于一个名为functions.js function(ODO) var markerClusters = L.markerClusterGroup(); for ( var i = 0; i < ODO.length ; i++ ) { var popup = ODO[i].branchcode + "<br/><b>کد ر

我在地图上创建了一个聚集json数据的函数,如下所示: 它位于一个名为
functions.js

function(ODO)    
var markerClusters = L.markerClusterGroup();
    for ( var i = 0; i < ODO.length ; i++ )
    {
        var popup = ODO[i].branchcode +
                "<br/><b>کد رشته :</b> " +
                ODO[i].branchcode +
                "<br/><b>دوره:</b> " +
                ODO[i].saleprd +
                "<br/><b>سال :</b> " +
                ODO[i].saleyear +
                "<br/><b>موقعیت مکانی:</b> " +
                ODO[i].LastX +
                "" +
                "-" +
                "" +
                ODO[i].LastY +
                "<br/><b>فلگ :</b> " +
                ODO[i].flag;
        var mainMap = L.marker( [ODO[i].LastX, ODO[i].LastY] )
                        .bindPopup( popup );
        markerClusters.addLayer( mainMap );
    }
    
    mainMap.addLayer( markerClusters );
    markerClusterLayer = L.markerClusterGroup({
        disableClusteringAtZoom: 13
    }).addTo(mainMap);
}
我这样从服务器调用数据:

var OMID_Detail_Object;
function OMID_Detail() {

  var Ajax_URL= Server_IP +'/OHM';
  var Year_Val = GetSelectValue("YearSelect");
  var Prd_Val = GetSelectValue("PrdSelect");
  var Flg_Val = GetSelectValue("flags");

  
  app.request.get(Ajax_URL, { "Token": Token_Data, "SaleYear":Year_Val, "SalePrd":Prd_Val, "Flag":Flg_Val }, function (data)
  {
    OMID_Detail_Object=data;
    MarkerOnMap(OMID_Detail_Object);
  },function (er){},"json");
}
function CreateMarkers(){
  OMID_Detail();
}
当我遇到图例错误时,我将默认映射命名为
mainMap
。但是现在,聚类标记的函数有一个错误,如:

Uncaught TypeError: mainMap.addLayer is not a function
at MarkerOnMap (functions.js:46)
at Object.success (app.js:213)
at i (0:4002)
at XMLHttpRequest.Request.f.onload (0:4179)
在这一部分中讨论了一个错误:

    mainMap.addLayer( markerClusters );
但是为什么呢?我试着说

    map.addLayer( markerClusters );
但它也不起作用。我也犯了同样的错误!
有人能帮上忙吗?

使用
window.mainMap
无处不在,而不是
mainMap

哇,真是太棒了!我没想到会有任何改变!!谢谢:)
    map.addLayer( markerClusters );