Попытка нарисовать многоугольник, но листовка выбрасывает следующую ошибку

Uncaught TypeError: Невозможно прочитать свойство 'length' неопределенного значения в e.projectLatlngs (leaflet-0.7.3.min.js: 8) в e.onAdd (leaflet-0.7.3.min.js: 7) в e._layerAdd (leaflet -0.7.3.min.js: 6) в e.addLayer (листовка-0.7.3.min.js: 6) в e.addTo (leaflet-0.7.3.min.js: 7) в (индекс): 165

Код многоугольника

<script>
    L.Icon.Default.imagePath = "https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.4.0/images"; // missing setup
    var center = L.bounds([1.56073, 104.11475], [1.16, 103.502]).getCenter();
    var map = L.map('mapdiv').setView([center.x, center.y], 12);

    var basemap = L.tileLayer('https://maps-{s}.onemap.sg/v3/Default/{z}/{x}/{y}.png', {
        detectRetina: true,
        maxZoom: 18,
        minZoom: 11
    });

    map.setMaxBounds([[1.56073, 104.1147], [1.16, 103.502]]);

    basemap.addTo(map);

    // create a red polyline from an array of LatLng points
    var latlngs = [
        [destinationLatitude, destinationLongitude],
        [startLatitude, startLongitude]
    ];
    var polyline = L.polyline(latlngs, { color: 'red' }).addTo(map);
    // zoom the map to the polyline
    map.fitBounds(polyline.getBounds());
</script>
0
user3803747

1 ответ

Оказывается, мои переменные startLongitude, destinationLatitude были в строке, и мне пришлось использовать parseFloat для их преобразования.