如何在控制器Angular JS中设置超时服务?

时间:2015-05-19 17:55:23

标签: angularjs

我在Angular JS服务,void changeGear ( int newValue ) { gear = newValue; } 值:

set/get

我还有两个控制器,首先执行AJAX请求并获取数据,然后传递给服务:

.service('mapService', function () {
            var mapCoord= [];
            mapCoord['x'] = 0;
            mapCoord['y'] = 0;

            return {
                getProperty: function () {
                    return mapCoord;
                },
                setProperty: function(value) {
                    if(value.length > 0){
                        var partsOfStr = value.split(',');
                        mapCoord['x'] = partsOfStr[0];
                        mapCoord['y'] = partsOfStr[1];
                    }
                }
            };
        })

下一个控制器从第一个控制器获取服务数据:

.controller('EditController', [...]){
    // AJAX Method
    response = function (data){
        $scope.data = data;
        mapService.setProperty(data);
    }
}

在HTML模板中,这些控制器是嵌套的。

.controller('MapController', [...]){
   var mapCoord = mapService.getProperty();
}

问题是在控制器<div ng-controller="EditController"> <div ng-controller="MapController"></div> </div> 中我从服务MapController获取空数组,因为第一个控制器mapService中的AJAX尚未返回数据。

0 个答案:

没有答案