我正在使用http://angular-google-maps.org/和IONIC-framework。
我以这种方式手动设置中心:
.controller('mainCtrl', function($scope) {
$scope.map = {
center: {
latitude: 51.219053,
longitude: 4.404418
},
...
我正在尝试在地图加载时使用Angular-google-maps设置用户位置。
我还必须在config()中创建新函数吗?因为我想要运行它。
答案 0 :(得分:2)
要设置用户的位置,您首先需要知道他们的位置。要做到这一点,你需要询问他们的位置,以便获得他们的经纬度。
我使用此插件来提示并获取用户的位置。
https://github.com/ionberry/cordova-plugin-geolocation-ios9-fix
获得纬度和经度后,您可以将地图的中心设置为用户的位置。如果您选择显示标记,则它们将以用户当前所在的位置为中心。
使用上面的插件获取用户的位置:
var positionOptions = {
timeout: 10000,
enableHighAccuracy: true
};
var getPosition = function() {
var q = $q.defer();
$ionicPlatform.ready().then(
function() {
$cordovaGeolocation.getCurrentPosition(positionOptions).then(
function(position) {
q.resolve(position);
}, function(error) {
q.reject(error);
}
);
}
);
return q.promise;
};
这将返回具有纬度和经度的位置对象。从那里,您可以将用户的纬度和经度传递给地图配置对象。如果您需要其他详细信息,geolocation插件有很好的文档。