错误加载json数据的角和谷歌地图
error load json data whit angular and google maps
我将非常感激谁能帮助我这一行,我有这个:我试图加载这个文件json,但没有显示我json标记
var app = angular.module("app", ["ngResource"]);
app.controller("appController", function ($scope, $http) {
var jsonData=[];
$http.get('json/map-data.json').success(function (data) {
jsonData = data.church;
});
var coordenadas={
lat:4.600293,
lng:-74.175458
}
// recupero la posicion
maPro = function(){
var contain = document.getElementById('mapa');
var position={
center:coordenadas,
zoom:10,
}
$scope.map= new google.maps.Map(contain, position);
}
$.each(jsonData, function(key, data){
var latLng = new google.maps.LatLng(data.lat, data.lng)
var marker = new google.maps.Marker({
Title:data.nombre,
position:latLng,
animation:google.maps.Animation.BOUNCE
})
})
google.maps.event.addDomListener(window, 'load', maPro);
})
我有以下JSON文件:
{
"church":[
{ "nombre":"ipuc brasilia",
"pastor":"pastor brasilia",
"telefono":"320 5559977",
"lat":4.6309497,
"lng":-74.1821257
}
]
}
`$http.get('json/map-data.json').success(function (data) {
jsonData = data;
});`
这是一个异步请求(Js将等待数据并执行其余代码…)所以,当js执行这个
$.each(jsonData, function(key, data){
var latLng = new google.maps.LatLng(data.lat, dat.lng)
var marker = new google.maps.Marker({
Title:data.nombre,
position:latLng,
animation:google.maps.Animation.BOUNCE
})
})
jsonData
未收到数据,未定义。
将此代码保存在请求的成功块中,或者在数据到达时使用Promises执行该代码。
var app = angular.module("app", ["ngResource"]);
app.controller("appController", function ($scope, $http) {
var jsonData=[];
$http.get('json/map-data.json').success(function (data) {
jsonData = data.church;
var coordenadas={
lat:4.600293,
lng:-74.175458
}
// recupero la posicion
maPro = function(){
var contain = document.getElementById('mapa');
var position={
center:coordenadas,
zoom:10,
}
$scope.map= new google.maps.Map(contain, position);
}
$.each(jsonData, function(key, data){
var latLng = new google.maps.LatLng(data.lat, dat.lng)
var marker = new google.maps.Marker({
Title:data.nombre,
position:latLng,
animation:google.maps.Animation.BOUNCE
})
})
google.maps.event.addDomListener(window, 'load', maPro);
});
})
这是最后的代码和工作
var app = angular.module("app", ["ngResource"]);
app.controller("appController", function ($scope, $http) {
var coordenadas={
lat:4.600293,
lng:-74.175458
}
maPro = function(){
var contain = document.getElementById('mapa');
var position={
center:coordenadas,
zoom:10,
}
$scope.map= new google.maps.Map(contain, position);
$http.get('json/map-data.json').success(function (responseData) {
$scope.datos = responseData.iglesias;
$.each($scope.datos, function(key, data){
var latLng = new google.maps.LatLng(data.lat, data.lng)
addMarker($scope.map, latLng)
})
})
}
google.maps.event.addDomListener(window, 'load', maPro);
addMarker = function(mapa, location){
var marker = new google.maps.Marker({
position:location,
map: mapa
})
}
})
相关文章:
- 不显示带有本地json文件数据的谷歌地图脚本
- 缓存谷歌地图数据
- 谷歌地图/Angular JS:地图更新并不总是反映数据,并且可以't删除标记
- 将iPhone位置数据输入谷歌地图
- 使用来自URL的JSON数据来显示谷歌地图标记-如何
- 基于数据的谷歌地图API标记
- 如何通过使用谷歌地图从文本字段提交来修改javascript对象中的数据
- 谷歌地图获取kml数据并显示它们
- 谷歌地图/融合表Javascript HTML赢得't显示/可视化所有多边形数据(通过色标)
- 在谷歌地图的JSON数据中循环
- 谷歌地图API-在从ajax页面加载新数据之前清除标记、多段线
- 谷歌地图数据类型抛出类型错误:can't将未定义转换为对象
- 从外部网站获取谷歌地图数据
- 如何填充谷歌地图数据图层的颜色
- 如何读取本地谷歌地图数据
- 当我展开手风琴面板时,谷歌地图数据将不会出现
- 如何获得外部谷歌地图数据作为KML从HttpResponse直接到Javascript或jQuery
- 在HTML文本区域中显示谷歌地图数据层
- 如何从谷歌地图数据层中删除数据
- 我可以在谷歌地图数据层中设置笔触样式吗?