我试图使用Leaflet.VectorGrid API在传单地图中加载GeoJSON,但无论我尝试什么,我都会收到此错误:
Uncaught (in promise) TypeError: this._makeFeatureParts is not a function
at e.initialize (vectorgrid.js:1085)
at e (leaflet.js:5)
at e._createLayer (vectorgrid.js:1039)
at e.<anonymous> (vectorgrid.js:977)
at <anonymous>
看起来错误的来源是JavaScript的这一部分:
_makeFeatureParts: function(t, e) {
var r = t.geometry[0][0];
"x" in r && (this._point = L.point(r.x * e, r.y * e),
this._empty = L.Util.falseFn)
}
是source script的第1092-1096行。
GeoJSON I'm using是一堆点,并与其他Leaflet函数一起使用。
这是我用于矢量网格的脚本的相关部分:
var vectorGrid = L.vectorGrid.slicer(myGeoJSON).addTo(map);
知道我错过了什么导致了这个错误吗?我希望能够添加一个简单的图层来查看它是如何工作的,但现在我无法通过第一步。我尝试过不同的GeoJSON并在命令中添加更多内容,但没有运气。
编辑:通过阅读以下答案提供的信息,我能够获得有效的解决方案。 Here's what I did to get it to work.
答案 0 :(得分:1)
库中有一个错误来获取GeoJSON点的坐标。
此问题已在其主分支中修复,但修复程序尚未发布。如果您不能等待v1.3.0版本,则可以直接从GitHub安装库。