更新 D3 地图示例

Updating a D3 Map sample

我发现一个不错的 D3 Map & Chart sample 正在使用

我想利用 esri-leaflet 包 (specifically use a Vector basemap) 中的一些功能,但我认为我需要将当前示例更新为 leaflet-1.2.0 才能执行此操作。

一旦我在 header 中从使用 leaflet-0.5 切换到 leaflet@1.2.0(来自矢量样本),连同最新的 CSS,我就会得到以下信息控制台错误:

leaflet.js:5 Uncaught Error: The provided object is not a Layer.
at e.addLayer (leaflet.js:5)
at e.addTo (leaflet.points-layer.js:44)
at d3_map_vt.html:76
at d3.v3.js:2011
at Object.<anonymous> (d3.v3.js:1996)
at Object.event (d3.v3.js:504)
at XMLHttpRequest.respond (d3.v3.js:1949)

有人可以指导我如何更新此示例以及导致上述错误的原因吗?我还需要更新 d3 库吗?

我已经为我自己的数据调整了代码here

你很幸运。那个伟大的样本只需要对 Leaflet 1.x.

中的 运行 进行一个小的调整
// line 1 of leaflet.points-layer.js
L.PointsLayer = L.Layer.extend({ // instead of L.Class    
  includes: L.Evented.prototype, // instead of L.Mixin.Events