加载地图后,Angular JS uiGmapgoogle-maps会添加标记

时间:2015-03-01 14:12:25

标签: angularjs google-maps-api-3 google-maps-markers

我最初在AngularJS中加载时能够添加标记,但是当我尝试在不添加标记之后再次按下它时。 这是我的Plunker

$scope.addMarkerLocation = function(){
  console.log('adding m');

  var m = 
      {
        id: 3,
        //icon: 'assets/img/blue_marker.png',
        latitude: 25.686384,
        longitude: -80.311644,
        showWindow: false,
        title: 'Jimmyz Kitchen Pinecrest',
        address: '9050 S Dixie Hwy Miami, FL 33156'
      };
  $scope.markers.push(m);
  console.log(m);
}

1 个答案:

答案 0 :(得分:1)

问题是您在mainCtrl的一个实例中创建了Google地图,然后在其他实例中添加了另一个标记,它们不会共享相同的范围,因此第一个实例不知道更改,您可以在相同的上下文中使用按钮或使用服务

angular.module('appMaps').factory('markers', function markers () {
    return {
      currentMarkers: []
    }
  })

http://plnkr.co/edit/kKbEB2ZSHgWQWnCTIvHg?p=preview