2016-06-12 74 views
1

我正在用Google地圖開發我的第一個AngularJS2應用程序。我想在點擊標記時將用戶轉發到另一個頁面(使用AngularJS路由)。重定向到其他頁面點擊谷歌地圖標記

目前沒有任何反應。我認爲這是理解在AngularJS事件的一個普遍問題...

angular.module('starter.controllers').controller('MapCtrl', function($scope, $location, $rootScope) { 

    var myLatlng = new google.maps.LatLng(50.413192, 8.033106);  

    var mapOptions = { 
     center: myLatlng, 
     zoom: 16, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 

    var map = new google.maps.Map(document.getElementById("map"), mapOptions); 

    var myLatlnggg = new google.maps.LatLng(55.413192, 8.033106); 
    var marker = new google.maps.Marker({ 
    position: myLatlnggg, 
    map: map, 
    title: 'Hello World!' 
    }); 

    $scope.marker = marker; 

    google.maps.event.addListener($scope.marker, 'click', function(){ 
     $location.path('/spot'); 
    }); 

}) 
+1

的事件是標誌click事件的工作?對於超出角度範圍的事件,應該使用'$ apply()' – charlietfl

+0

@charlietfl謝謝!這有助於!將創建,如果你張貼它作爲答案,所以我可以標記它! – rakete

回答

1

對於外界的角度範圍內使用$scope.$apply()發生勸告角度變化

google.maps.event.addListener($scope.marker, 'click', function(){ 
    $scope.$apply(function(){ 
     $location.path('/spot'); 
    });  
}); 
相關問題