简体   繁体   English

LeafLet错误:对象# <Object> 在file:///android_asset/www/leaflet.js:6没有方法&#39;onAdd&#39;

[英]LeafLet Error : Object #<Object> has no method 'onAdd' at file:///android_asset/www/leaflet.js:6

I'm trying to understand how Leaflet works. 我试图了解Leaflet的工作原理。 I'm trying this tutorial. 我正在尝试教程。 I deleted some code from tutorial for more clean code. 我从教程中删除了一些代码以获取更简洁的代码。 Now have a problem with L.control.layers . 现在L.control.layers有问题。

If i want to add overlay like this 如果我想这样叠加

var overlays = {
          "Cities": cities
            };

var layersControl = L.control.layers(null, overlays);

There is no problem with adding overlays to control. 将叠加层添加到控件没有问题。 With this code, I can show/hide layer with clicking checkbox 使用此代码,我可以通过单击复选框显示/隐藏图层

But if I want to add overlay like this 但是如果我想这样添加叠加

 var overlays = {
              "Cities": cities
                };
var layersControl = L.control.layers();
layersControl.addOverlay(overlays);

There is problem with overlays. 覆盖物有问题。 Here when i want to show/hide layer with clicking checkbox, an error appearing. 在这里,当我想通过单击复选框显示/隐藏图层时,出现错误。

Uncaught TypeError: Object # has no method 'onAdd' at file:///android_asset/www/leaflet.js:6 未捕获的TypeError:对象#在file:///android_asset/www/leaflet.js:6处没有方法'onAdd'

Uncaught TypeError: Object # has no method 'onRemove' at file:///android_asset/www/leaflet.js:6 未捕获到的TypeError:对象#在file:///android_asset/www/leaflet.js:6处没有方法'onRemove'

I have to use 2. piece of code. 我必须使用2.代码段。 Can anyone help me ? 谁能帮我 ?

Full code is here 完整代码在这里

var cities = new L.LayerGroup();

 L.marker([39.61, -105.02]).bindPopup('This is Littleton, CO.').addTo(cities),
            L.marker([39.74, -104.99]).bindPopup('This is Denver, CO.').addTo(cities),
            L.marker([39.73, -104.8]).bindPopup('This is Aurora, CO.').addTo(cities),
            L.marker([39.77, -105.23]).bindPopup('This is Golden, CO.').addTo(cities);


            var cmAttr = 'Map data &copy; 2011 OpenStreetMap contributors, Imagery &copy; 2011 CloudMade',
                cmUrl = 'http://{s}.tile.cloudmade.com/BC9A493B41014CAABB98F0471D759707/{styleId}/256/{z}/{x}/{y}.png';



            var map = L.map('map');


            map.addLayer(cities,true);
            map.setView([39.73, -104.99],10);

            var overlays = {

                "Cities": cities

            };

    var layersControl = L.control.layers(null, overlays);

     layersControl.setPosition("bottomleft");

     layersControl.addTo(map);

I found solution myself. 我自己找到了解决方案。

I've added cities object directly instead of trying to add overlays 我直接添加了城市对象,而不是尝试添加叠加层

var layersControl = L.control.layers();
layersControl.addOverlay(cities,'Cities');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Phonegap:对象xx在文件中没有方法&#39;exec&#39;:///android_asset/www/cordova.js - Phonegap: Object xx has no method 'exec' at file:///android_asset/www/cordova.js 未捕获的TypeError:对象#<Object>在file:///android_asset/www/index.html上没有方法'exec' - Uncaught TypeError: Object #<Object> has no method 'exec' at file:///android_asset/www/index.html Leaflet.js和Mapbox.js-未捕获的TypeError:对象[object Object]没有方法&#39;on&#39; - Leaflet.js & Mapbox.js - Uncaught TypeError: Object [object Object] has no method 'on' leaflet.js:未捕获的错误:无效的LatLng对象:(NaN,NaN) - leaflet.js: Uncaught Error: Invalid LatLng object: (NaN, NaN) “初始化网络连接时出错:找不到类”,来源:file:///android_asset/www/cordova.js - “Error initializing Network Connection: Class not found”, source: file:///android_asset/www/cordova.js leaflet.js显示空地图:未捕获错误:无效的LatLng对象:(NaN,NaN) - leaflet.js is showing empty map: Uncaught Error: Invalid LatLng object: (NaN, NaN) Phonegap / Android错误:未捕获ReferenceError:未在file:///android_asset/www/js/login.js:17定义url - Phonegap/Android error: Uncaught ReferenceError: url is not defined at file:///android_asset/www/js/login.js:17 您好如何为我提供帮助并解决“ file:///android_asset/www/plugin.js中未定义Cordova.exec()”错误 - hi how can help me and resolve “Cordova.exec() is not defined at file:///android_asset/www/plugin.js” error 未捕获的TypeError:无法读取未定义的属性&#39;OneSignal&#39;,来源:file:/// android_asset / www / js / app - Uncaught TypeError: Cannot read property 'OneSignal' of undefined", source: file:///android_asset/www/js/app 应用程序错误是一个目录(file:///#android_asset/www/index.html) - Application Error Is a directory (file:///#android_asset/www/index.html)
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM