Javascript 传单:geojson图层上的标记图标大小

Javascript 传单:geojson图层上的标记图标大小,javascript,leaflet,Javascript,Leaflet,我正在展示一个带有传单的Geojson图层。我想更改默认标记图标大小 下面是我找到的代码: $.ajax({ type: "GET", url: "data.json", dataType: 'json', success: function (response) { geojsonLayer = L.geoJson(response, { pointToLayer:

我正在展示一个带有传单的Geojson图层。我想更改默认标记图标大小

下面是我找到的代码:

    $.ajax({
        type: "GET",
        url: "data.json",
        dataType: 'json',
        success: function (response) {
            geojsonLayer = L.geoJson(response, {
                pointToLayer: function(featuer, latlng) {
                    var smallIcon = L.Icon.extend({
                        options: {
                            'iconSize': [10, 10]
                        }
                    });
                    var myIcon = new smallIcon();
                    return L.marker(latlng, {icon: smallIcon});
                },
                onEachFeature: onEachFeature
            }).addTo(map);
        }
    });
但是,我在加载页面时遇到javascript错误:

Uncaught TypeError: Cannot read property 'popupAnchor' of undefined 

有什么线索吗?

我认为在扩展L.Icon类时,必须指定IconUrl,它是指向用于图标的图像文件的链接。见文件:

由于smallIcon构造函数不满足所有必需的选项,myIcon将是未定义的

试试这个:

var myIcon = L.icon({
    iconUrl: 'leaflet/images/marker-icon.png',
    iconSize: [10,10],
    iconAnchor: [22, 94],
    popupAnchor: [-3, -76],
    shadowUrl: 'leaflet/images/marker-shadow.png',
    shadowSize: [68, 95],
    shadowAnchor: [22, 94]
});

L.marker(latlng, {icon: myIcon}).addTo(map);

我认为在扩展L.Icon类时,必须指定IconUrl,它是指向用于图标的图像文件的链接。见文件:

由于smallIcon构造函数不满足所有必需的选项,myIcon将是未定义的

试试这个:

var myIcon = L.icon({
    iconUrl: 'leaflet/images/marker-icon.png',
    iconSize: [10,10],
    iconAnchor: [22, 94],
    popupAnchor: [-3, -76],
    shadowUrl: 'leaflet/images/marker-shadow.png',
    shadowSize: [68, 95],
    shadowAnchor: [22, 94]
});

L.marker(latlng, {icon: myIcon}).addTo(map);

你试过没有ajax吗?没有。不知道我怎么能做到。没有ajax你试过吗?没有。我不知道怎么做。或者扩展
L.Icon.Default
而不是
L.Icon
。谢谢,geohacker的解决方案确实有效。但是,由于我不想覆盖iconURL(我使用的是来自CDN的传单),因此扩展L.Icon.Default是一个好方法。干杯或者扩展
L.Icon.Default
而不是
L.Icon
。谢谢,geohacker的解决方案确实有效。但是,由于我不想覆盖iconURL(我使用的是来自CDN的传单),因此扩展L.Icon.Default是一个好方法。干杯