tile-layer.svelte 487 B

1234567891011121314151617181920
  1. <script lang="ts">
  2. import { TileLayer, type TileLayerOptions } from 'leaflet';
  3. import { onDestroy, onMount } from 'svelte';
  4. import { getMapContext } from './map.svelte';
  5. export let urlTemplate: string;
  6. export let options: TileLayerOptions | undefined = undefined;
  7. let tileLayer: TileLayer;
  8. const map = getMapContext();
  9. onMount(() => {
  10. tileLayer = new TileLayer(urlTemplate, options).addTo(map);
  11. });
  12. onDestroy(() => {
  13. tileLayer?.remove();
  14. });
  15. </script>