Leaflet:GeoJSON属性

时间:2015-11-23 14:17:38

标签: javascript leaflet geojson

我正在使用GeoJSON数据构建传单地图。尝试根据GeoJSON属性设置我使用的图标时遇到问题。我认为我的错误与使用字符串调用对象有关,但我无法弄清楚它究竟是什么。

这是我的代码:

GeoJSON中的每个项目都有一个iconcategory属性,如下所示:

{"type":"Feature",
    "properties":{
        "iconcategory": "iconGreyHouse",
            ...

对于每个图标类别,都有一个图标变量,如下所示:

var iconGreyHouse = L.icon({
    iconUrl: "/markerIcons/house_icon_grey.png",
    iconSize: [20, 20]
});

最后,当我加载我的GeoJSON文件时,我从我的GeoJSON属性中获取“iconcategory”,希望选择相应的图标变量......

$.getJSON("/GeoJSON/housemarkers.geojson", function (houses) {
    L.geoJson(houses, {
        pointToLayer: function (feature, latlng) {
            return L.marker(latlng, {
                icon: feature.properties.iconcategory
            });
        }
    }).addTo(housemarkers);
});

这是不起作用的地方!如果我使用完全相同的代码,但直接指定一个图标变量名称,一切正常;只有当我尝试通过feature.property设置图标时它才会失败。

0 个答案:

没有答案