HTML:
<ya-map ya-zoom="10" ya-center="{{ center }}" ya-before-init="beforeInit()"> <ya-geo-object ng-repeat="o in geoObjects" ya-source="o"></ya-geo-object> </ya-map>
javascript:
$scope.beforeInit = function(){ var geolocation = ymaps.geolocation; geolocation.get({ provider: 'yandex', mapStateAutoApply: true }).then(function (result) { $scope.geoObjects.push({ geometry:{ type:'Point', coordinates:result.geoObjects.position }, properties:{ balloonContent:'Определено по IP' } }); $scope.center = result.geoObjects.position; $scope.$digest(); }); geolocation.get({ provider: 'browser', mapStateAutoApply: true }).then(function (result) { // Синим цветом пометим положение, полученное через браузер. // Если браузер не поддерживает эту функциональность, метка не будет добавлена на карту. $scope.geoObjects.push({ geometry:{ type:'Point', coordinates:result.geoObjects.position }, properties:{ balloonContent:'Определено по данным браузера' } }); $scope.$digest(); }); }; $scope.geoObjects=[];