Javascript AngularJs传单指令地图在使用ionic的移动设备上无法正确渲染
我最近开始尝试使用爱奥尼亚。用于显示地理位置 一切都很好,但我有一个我无法解决的问题 一切都在pc上运行 但在手机上,路径没有显示,地图是灰色的 我的伙伴Javascript AngularJs传单指令地图在使用ionic的移动设备上无法正确渲染,javascript,angularjs,dictionary,ionic-framework,directive,Javascript,Angularjs,Dictionary,Ionic Framework,Directive,我最近开始尝试使用爱奥尼亚。用于显示地理位置 一切都很好,但我有一个我无法解决的问题 一切都在pc上运行 但在手机上,路径没有显示,地图是灰色的 我的伙伴 .controller('ShowCtrl', function($scope, $stateParams, $ionicLoading, $timeout, $http, leafletData) { $ionicLoading.show({template: 'Downloading...'}); $scope.center
.controller('ShowCtrl', function($scope, $stateParams, $ionicLoading, $timeout, $http, leafletData) {
$ionicLoading.show({template: 'Downloading...'});
$scope.center = {};
$scope.paths = {};
$scope.markers = {};
$scope.defaults = {};
$scope.map = {};
$http({
method: 'GET',
url: 'https://api.foursquare.com/v2/venues/'+$stateParams.id,
params: {
'client_id' : 'xxx',
'client_secret' : 'xxx',
'v' : '20130815',
}
}).then(function successCallback(data) {
$timeout(function () {
$scope.place = data.data.response.venue;
$scope.title = data.data.response.venue.name;
angular.extend($scope, {
center: {
lat: $scope.lat,
lng: $scope.long,
zoom: 12
},
paths: {
p1: {
color: '#ff612f',
weight: 5,
latlngs: [
{ lat: data.data.response.venue.location.lat, lng: data.data.response.venue.location.lng },
{ lat: $scope.lat, lng: $scope.long }
],
}
},
markers: {
destination: {
lat: data.data.response.venue.location.lat,
lng: data.data.response.venue.location.lng,
message: data.data.response.venue.name,
focus: true,
draggable: false,
icon: {
iconUrl: 'lib/leaflet/dist/images/marker-icon2.png',
}
},
mylocation: {
lat: $scope.lat,
lng: $scope.long,
icon: {
iconUrl: 'lib/leaflet/dist/images/marker-icon.png',
}
}
},
defaults: {
scrollWheelZoom: false,
zoomControl:false
}
});
$ionicLoading.hide();
}, 2000);
});
});
地图
有人能帮我一下吗?你用的是哪种Cordova版本 最新版本现在强制使用。因此,您必须允许您发出的每个HTTP请求 传单贴片是从web获取的,因此您必须允许它们 这方面的主要目标是:
只要在HTML的头部包含这一行,它就会工作得更好。好的,问题是我必须在ajax调用之前初始化tileLayer 像这样
$scope.defaults = { zoomControl: false, layerControl: false, tileLayer: 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'};
$http({
method: 'GET',
url: 'https://api.foursquare.com/v2/venues/'+$stateParams.id,
params: {
'client_id' : 'xxx',
'client_secret' : 'xxx',
'v' : '20130815',
}
}).then(function successCallback(data) {
$timeout(function () {
$scope.place = data.data.response.venue;
$scope.title = data.data.response.venue.name;
angular.extend($scope, {
markers: {
destination: {
lat: data.data.response.venue.location.lat,
lng: data.data.response.venue.location.lng,
message: data.data.response.venue.name,
focus: true,
draggable: false,
icon: {
iconUrl: 'lib/leaflet/dist/images/marker-icon2.png',
}
},
mylocation: {
lat: $scope.lat,
lng: $scope.long,
icon: {
iconUrl: 'lib/leaflet/dist/images/marker-icon.png',
}
}
}
});
$ionicLoading.hide();
}, 2000);
});
感谢您的回复,抱歉回答太慢,但结果相同。那么,当您的设备USB连接到PC时,是否可以使用命令adb shell logcat | grep CONSOLE查看错误消息(如果有)?
$scope.defaults = { zoomControl: false, layerControl: false, tileLayer: 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'};
$http({
method: 'GET',
url: 'https://api.foursquare.com/v2/venues/'+$stateParams.id,
params: {
'client_id' : 'xxx',
'client_secret' : 'xxx',
'v' : '20130815',
}
}).then(function successCallback(data) {
$timeout(function () {
$scope.place = data.data.response.venue;
$scope.title = data.data.response.venue.name;
angular.extend($scope, {
markers: {
destination: {
lat: data.data.response.venue.location.lat,
lng: data.data.response.venue.location.lng,
message: data.data.response.venue.name,
focus: true,
draggable: false,
icon: {
iconUrl: 'lib/leaflet/dist/images/marker-icon2.png',
}
},
mylocation: {
lat: $scope.lat,
lng: $scope.long,
icon: {
iconUrl: 'lib/leaflet/dist/images/marker-icon.png',
}
}
}
});
$ionicLoading.hide();
}, 2000);
});