1

我是 angularjs 的新手。我有以下代码,现在我想访问控制器中的地图对象。在这里我不知道,如何将它传递给控制器​​?

我的自定义指令:

angular.module('demoApp.directives', []).
    directive('mapCanvas', function() {
        return {
            restrict: 'A',
            link: function (scope, elem, attrs) {
                var  mapOptions = {
                    center:new google.maps.LatLng(22.772323, 78.214897) ,
                    zoom: 5,
                    mapTypeId: google.maps.MapTypeId.ROADMAP
                };
                var map = new google.maps.Map(elem[0], mapOptions);

            }
        }
  });
4

1 回答 1

2

在您的中定义一个函数scope并将 amap作为参数传递。

在一个范围内: $scope.getMap = function(map){ // do something with a map};.

在指令中,在map定义后添加:scope.getMap(map)

于 2013-10-03T11:20:56.513 回答