javascript - update scope variable from a promise inside a directive controller -
javascript - update scope variable from a promise inside a directive controller -
i newbie angular. trying populate map.markers array existing in controller controller of directive(from promise within it).. , having hard time figuring out. help appreciated
var locationcontroller = function ($scope, $http, appmodesservice, limittofilter, uigmapgooglemapapi) { // var latestmasteryear = appmodesservice.getlatestmasteryear(); uigmapgooglemapapi.then(function (maps) { $scope.googleversion = maps.version; }); $scope.map = { center: { latitude: 40.0000, longitude: -98.0000, }, zoom: 7, bounds: {}, markers : [] };
directive code:
app.directive('referencepoints', function () { homecoming { restrict: 'e', scope: { routeid: '@routeid', road: '=', openstatus: '=', markers: '=' }, template: "{{routeid}}<div ng-repeat='point in refresults'>{{point.roadname}}</div>", controller: function ($scope, $http, appmodesservice) { $scope.refresults; $scope.isitopen = true; $scope.refresults = $http.get(appmodesservice.getrisapiurlprefix() + 'getreferencepoints?routesid=' + $scope.road + '&limited=true').then( function (response) { $scope.refresults = response.data; // problem starts .. should inject $scope.markers here or not? $scope.generatemarkers(response.data, $scope.markers) //return response.data; }); var generatemarkers = function (data, markers) { (i = 0; < data.length; i++) { var record = data[i]; var marker = { latitude: record.lat, longitude: record.long, title: record.roadname, id: record.id }; markers.push(marker); } homecoming markers; }; $scope.generatemarkers = function(data, scope){ generatemarkers(data, scope); }; //$scope.refpoints = $scope.referencepoints(routeid); } } });
...
<reference-points ng-if="isitopen" markers="markers" road=road.id route-id="{{road.text}}"/>
....
another directive :
<ui-gmap-google-map center="map.center" zoom="map.zoom"> <ui-gmap-markers models="map.markers" coords="'self'" icon="'icon'"> </ui-gmap-markers> </ui-gmap-google-map>
i unable populate markers map directive controller. please help
i changed marker="marker" in referencepoints directive marker="map.marker" , fixed it. @matho clue.
javascript angularjs angularjs-directive angularjs-scope angular-google-maps
Comments
Post a Comment