- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我想知道是否有人可以在这里为我指明正确的方向,如果我对 latitude 和 longitude 进行硬编码,我正在使用 Google map 尝试为用户着色分配的邮政编码区域 这样就完美了;
var triangleCoordsLS12 = [
{lng: -1.558585, lat: 53.796545},
{lng: -1.558585, lat: 53.796545},
.....
];
但我正在尝试通过 PHP 和 JSON 像这样从 MySQL 数据库获取信息;
$.ajax({
type:'POST',
url:'test.php',
success:function(data){
var resultArray = JSON.parse(data);
for (var i=0; i<resultArray.length; i++) {
var triangleCoordsLS12 = new google.maps.LatLng(resultArray[i].lat, resultArray[i].lng);
if(location.uname == 'John Smith'){
bermudaTriangleLS12 = new google.maps.Polygon({
paths: triangleCoordsLS12,
strokeColor: '#ff0000',
strokeOpacity: 0.8,
strokeWeight: 1,
fillColor: '#ff0000',
fillOpacity: 0.30
});
bermudaTriangleLS12.setMap(map);
} else if(location.uname == 'Bruce Brassington'){
bermudaTriangleLS12 = new google.maps.Polygon({
paths: triangleCoordsLS12,
strokeColor: '#FFcc00',
strokeOpacity: 0.8,
strokeWeight: 1,
fillColor: '#FFcc00',
fillOpacity: 0.25
});
bermudaTriangleLS12.setMap(map);
}
}
}
})
我在这些行上收到错误 Uncaught InvalidValueError: not an Array
:-
bermudaTriangleLS12 = new google.maps.Polygon({
我知道错误提示不是 Array
那么我该如何将这些点放入数组中呢?非常感谢您的帮助。
最佳答案
您需要先构造数组,然后在创建多边形时使用它。在您的代码中,您在“坐标”循环内创建了一个新的多边形,因此您创建了一个在每个循环上只有一个点的多边形。
//build the array
var resultArray = JSON.parse(data);
var triangleCoordsLS12 = []
for (var i=0; i<resultArray.length; i++) {
triangleCoordsLS12[i] = new google.maps.LatLng(resultArray[i].lat, resultArray[i].lng);
}
//use the array as coordinates
bermudaTriangleLS12 = new google.maps.Polygon({
paths: triangleCoordsLS12,
trokeColor: '#ff0000',
strokeOpacity: 0.8,
strokeWeight: 1,
fillColor: '#ff0000',
fillOpacity: 0.30
});
bermudaTriangleLS12.setMap(map);
伪代码我的例子:
For each coordinate {
add coordinate to array
}
construct-polygon(coordinate array)
您的代码:
For each coordinate {
construct-polygon(coordinate)
}
关于javascript - 未捕获的 InvalidValueError : not an Array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32714122/
我想知道是否有人可以在这里为我指明正确的方向,如果我对 latitude 和 longitude 进行硬编码,我正在使用 Google map 尝试为用户着色分配的邮政编码区域 这样就完美了; var
我正在使用 ngmaps ( https://ngmap.github.io )、google maps api 和 angularJS 自定义 google map。我想要的是带上一个地方的标记,查
我已经阅读了几个不同的 S.O.关于这个的问题,但找不到任何表明我可能在这里遗漏的东西。我是 Ember 的新手,所以我可能把这段代码放在了错误的地方。无论如何,这就是我所拥有的: ../compon
我正在尝试制作一个地址框,其中包含上车/下车地址。 Like this one使用 AngularJs。 我正在使用 Google Autocomplete API所以我可以在有人开始输入地址时自动完
我正在尝试加载带有一些特定参数的谷歌地图。我知道问题很可能是需要全局声明 initMap 函数。然而,我不知道如何,即使在搜索了许多具有类似问题的 StackOverflow 帖子之后也是如此。 其他
我正在用 Rails 5 Ruby 2.4.0 构建一个应用程序,我正在尝试实现一个动态谷歌地图,在 map 上为 PostgresDB 中的每个位置放置一个标记。 我正在使用地理编码器 gem,这是
当我加载显示我的 Google map 的页面时,我总是在控制台中看到以下错误: Uncaught InvalidValueError: initialise is not a function js
当我使用 sencha touch2.2.1 时,我遇到了一个问题。 在查看器中: items: [{ id: 'mapCanvas', xtype:'map', useCur
function wnw_set_google_autocomplete_my(){ jQuery(gaaf_fields_my).each(function(){ var a
我正在尝试使用折线创建带有方向的谷歌地图。但是我收到了上面的控制台错误,我就是不知道这里有什么问题。 代码 : var marker; var infowindow; var labels = 'A
我有一个应用程序,在其中我必须绘制折线并在Google map 上放置一些标记,以便绘制折线,我从数据库中获取数据,一切正常,但在开发人员控制台中却出现错误 InvalidValueError:属性来
我想根据我的 GPS 位置数量向 Google map 标记添加标签。我在数据库中获取了数据,我可以向 map 添加标记,但我无法在标记内添加标记。 for(var i = 0; i 关于java
我正在使用谷歌地图显示多个位置,我想在它们之间绘制路径。我的路径显示正确,但在控制台我收到此错误 Uncaught InvalidValueError: not a LatLngBounds or L
这个问题在这里已经有了答案: How to fix Uncaught InvalidValueError: setPosition: not a LatLng or LatLngLiteral: i
当我跨浏览器测试我的站点并在 Safari 中尝试时,我的仪表板中的这个错误不知从何而来。它适用于 Chrome、Firefox 和 IE9,但适用于 Safari: 这是错误,我不知道这是哪里发生的
我正在尝试放置一个 shinydashboard在一起,并有一个谷歌地方搜索框作为文本输入。下面的代码以常规方式运行 shiny页面,但抛出 InvalidValueError: not an ins
我在谷歌地图中遇到这个错误。 错误:InvalidValueError:setIcon:不是字符串;并且没有 url 属性;并且没有路径属性 早些时候它运行良好,我从未更改过我的代码。 我看过一个帖子
function initAutocomplete() { var lat=document.getElementById('lat').value; var lng=document
我正在尝试将我的 googlemaps v2 功能移植到 v3。 但不知何故我陷入了一个奇怪的错误,我找不到我做错了什么。 Error : Uncaught InvalidValueError: se
我今天刚开始收到 Google map 的这个错误: 未捕获的 InvalidValueError:setIcon:不是字符串;并且没有 url 属性;并且没有路径属性 几个月来我没有更改任何代码。
我是一名优秀的程序员,十分优秀!