【发布时间】:2019-01-02 22:14:05
【问题描述】:
我在Leaflet JS网站上复制这个教程:https://leafletjs.com/examples/choropleth/
添加控件的代码是这样的:
var info = L.control();
info.onAdd = function(mymap) {
//Create a div with a class of info
this._div = L.DomUtil.create('div', 'info');
this.update();
return this._div;
};
但是当我这样做时,我收到以下错误:
未捕获的 TypeError:this.update 不是函数。
以下是我如何将教程中的代码合并到我的代码中:
var mymap = L.map('mapid').setView([41.850033, -87.6500523], 3.2);
L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}', {
attribution: 'Map data © <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="https://www.mapbox.com/">Mapbox</a>',
maxZoom: 15,
id: 'mapbox.mapbox-streets-v7',
accessToken: 'pk.eyJ1IjoiYWxsYW5yaW1iYW4iLCJhIjoiZWEyYTc5NDhmZjdmYjQzM2I3MDdkN2I4OTQ3MjQyNWEifQ.U2GPM8lv7x--qHhbjNo5Ug'
}).addTo(mymap);
//control that shows county info
var info = L.control();
info.onAdd = function (mymap) {
//Create a div with a class of info
this._div = L.DomUtil.create('div', 'info');
this.update();
return this._div;
};
//method that will update the control based on feature properties passed
info.udpate = function (props) {
this._div.innerHTML = '<h4>US Election Result</h4>' + (props ? '<b>' + props.NAME + '</b>' : 'Hover over a county');
};
info.addTo(mymap);
您可以在此处查看我的网页和源代码中的错误: https://sushirittoman.github.io/maps/counties_project/index.html
请帮忙。谢谢。
【问题讨论】:
标签: javascript web controls leaflet mapping