改变 Leaflet Realtime geoJson 功能的风格

Changing style of Leaflet Realtime geoJson features

我有一张传单地图,使用传单实时显示和更新来自 geoJson 源的位置、多边形和线(数据是机载摄像机的位置和视野)。我想从默认的蓝色更改线条和多边形的样式。我知道 leaflet-realtime extends L.geojson 所以我认为下面的代码应该可以工作但是我得到 options.style is not a function。我一直在寻找其他示例来尝试执行此操作,但这一天都很沮丧。

var lineStyle = {
    color: 'black',
    weight: 5,
    opacity: 0.5
}

los = L.realtime({
    url: 'http://127.0.0.1/geojson/los2.geojson',
    crossOrigin: true,
    type: 'json'
}, {
    interval: 1 * 500,
    style: lineStyle
   
}).addTo(map);

los.on('update', function(){
  
    map.flyTo(
            [this._features.los.geometry.coordinates[1][1],
             this._features.los.geometry.coordinates[1][0]]
           
       )
    
});

如果有人能指出我正确的方向,将不胜感激。

谢谢

是 options.style 必须是函数 - 看: https://leafletjs.com/reference-1.7.1.html#geojson-style

更改您的代码:

var lineStyle = {
    color: 'black',
    weight: 5,
    opacity: 0.5
}

los = L.realtime({
    url: 'http://127.0.0.1/geojson/los2.geojson',
    crossOrigin: true,
    type: 'json'
}, {
    interval: 1 * 500,
    style: function() { return lineStyle; }
   
}).addTo(map);

los.on('update', function(){
  
    map.flyTo(
            [this._features.los.geometry.coordinates[1][1],
             this._features.los.geometry.coordinates[1][0]]
           
       )
    
});