AngularJS中的数据绑定和承诺

时间:2017-03-30 11:21:46

标签: angularjs angular-promise angular-http

我使用以下工厂从服务器返回带有用户数据的http保证

  $data = Districts::select([ DB::raw('DISTINCT(district)'),'region'])->whereRaw('LOWER(district) like ?', [strtolower('%'.$district . '%')])->orWhereRaw('LOWER(region) like ?', [strtolower('%'.$district . '%')])->get();

我在应用的运行方法中启动此http请求。

在另一个控制器中,我做了以下

(function () {

  angular.module('BlurAdmin.theme')
      .factory('getData', function($http){

    var service = {};
    service.objData = null;

    service.savePromise = function(objData) {

      service.objData = objData;
    }

    service.getSavedPromise = function() {

      return service.objData;
    }


    service.getDataFromServer = function() {

      var promise = $http.get('/admin/data');

      service.savePromise(promise);
    }

    return service;

  });

})();

数据结构有点混乱,我需要修复它,但这不是重点。

我用例如

getData.getSavedPromise().then(function (data) {
  $scope.newVisits = data.data.data.newVisitors;
});

var pieColor = baUtil.hexToRGB(baConfig.colors.defaultText, 0.2);
$scope.charts = [{
  color: pieColor,
  description: 'New Visits',
  stats: '$ ' + $scope.newVisits,
  icon: 'person',
}, {
  color: pieColor,
  description: 'Purchases',
  stats: '$ 89,745',
  icon: 'money',
}, {
  color: pieColor,
  description: 'Active Users',
  stats: '178,391',
  icon: 'face',
}, {
  color: pieColor,
  description: 'Returned',
  stats: '32,592',
  icon: 'refresh',
}
];

在html中。

问题是数据没有绑定,我在页面中看到未定义。

我做错了什么?

0 个答案:

没有答案