У меня есть событие клика, которое я прикрепляю к информационному окну Google Maps с помощью тега <a>
.Тем не менее, она не будет вызывать функцию, даже если она говорит, что она активирована.
Я попытался добавить ng-app=""
и ng-controler=""
безуспешно
.controller('mainCtrl', function($scope, $rootScope, $stateParams,
uiGmapGoogleMapApi, $cordovaGeolocation, $state, $firebase,
$ionicModal) {
var createMap = function(position){
angular.extend($scope, {
map: {center: {latitude: position.coords.latitude,longitude:position.coords.longitude},
zoom: 13,
markers: markersarray,
options: {
// This is an example of a variable that cannot be placed outside of uiGmapGooogleMapApi without forcing of calling the google.map helper outside of the function
streetViewControl: false,
mapTypeControl: false,
scaleControl: false,
rotateControl: false,
zoomControl: false
},
events: {
click: function (map, eventName, originalEventArgs) {
var e = originalEventArgs[0];
Marker_Latt = e.latLng.lat();
Marker_Long = e.latLng.lng();
$scope.openModal();
}
},
markersEvents: {
click: function(marker, eventName, model, args) {
for(var i = 0; i < markersarray.length; i++){
if(markersarray[i].id === marker.key){
var content = '';
content += '<div ng-app="main" ng-controller="mainCtrl"><p>Added By: <a style="cursor: pointer;" [routerLink]="" (click)="navigatetoUser()">'+markersarray[i].username+'</a></p>';
content += '<p>Added On: ' + markersarray[i].date.toString() + "</p></div>";
navigateUserID = markersarray[i].userid;
createWindow(marker.get('map'), marker, content);
break;
}
}
},
dblclick:function(marker, eventName, model, args) {
console.log("double click!" + marker);
}
},
}
} );
};
$scope.navigatetoUser = function(){
console.log("button clicked..");
//$scope.data.selectedUserID = navigateUserID;
//$state.go('userProfile', $scope.data);
};
function createWindow(map, marker, content){
var infowindow = new google.maps.InfoWindow({
content: content
});
infowindow.open(map, marker);
}
});
Функция navigatetoUser () не сработалаи я не вижу никаких ошибок
Исходный код: '' '
<ui-gmap-window isiconvisibleonclick="true">
<p> {{CurrentMakerTitle}}
<a href="" ng-click="$root.navigatetoUser()">
{{CurrentMakerUserName}}
</a>
<br>{{CurrentMakerDateAdded}}
</p>
</ui-gmap-window>
</ui-gmap-marker>
' '' Я изменил его на информационное окно, так как в нескольких окнах отображается информация о последнем щелчке -