You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
16 lines
644 B
16 lines
644 B
import { createElementObject, createPathComponent, extendContext } from '@react-leaflet/core'; |
|
import { GeoJSON as LeafletGeoJSON } from 'leaflet'; |
|
export const GeoJSON = createPathComponent(function createGeoJSON({ data , ...options }, ctx) { |
|
const geoJSON = new LeafletGeoJSON(data, options); |
|
return createElementObject(geoJSON, extendContext(ctx, { |
|
overlayContainer: geoJSON |
|
})); |
|
}, function updateGeoJSON(layer, props, prevProps) { |
|
if (props.style !== prevProps.style) { |
|
if (props.style == null) { |
|
layer.resetStyle(); |
|
} else { |
|
layer.setStyle(props.style); |
|
} |
|
} |
|
});
|
|
|