首页 > 解决方案 > 未捕获的 ReferenceError:未定义数据点。从 api 调用 json 数据时

问题描述

我正在尝试从具有 JSON 格式数据的 api 调用变量数据点。我收到以下错误:

未捕获的 ReferenceError:未定义数据点

我在这里使用了变量。

     for (var i=0; i<datapoint.length; i++) {

            var lon = datapoint[i][2];
            var lat = datapoint[i][3];
            var popupText = String(datapoint[i][2]);
            var markerLocation = new L.LatLng(lat, lon);
            var marker = new L.marker(markerLocation);
            marker.addTo(map).bindPopup(popupText);
            marker.setOpacity(0.001);
        }

这是我调用 api 的方式:

<script src="http://example.com/vx1/xloc.php?qty=100"></script>

JSON对象:

{"datapoint":[{"intensity":92,"latitud":"18.52","longitud":"82.4767"},{"intensity":68,"latitud":"17.7375","longitud":"82.8347"}]}

标签: javascriptapileaflet

解决方案


您获取的值错误。请从此代码中脱颖而出并相应地更新您的代码

fetch('http://example.com/vx1/xloc.php?qty=100')
  .then((response) => response.json())
  .then((response) => {
        let datapoint = response.datapoint;
        for (let i=0; i<datapoint.length; i++) {

            let lon = datapoint[i]["latitude"];
            let lat = datapoint[i]["longitude"];
         //rest of the code
        }
  });

推荐阅读