跨控制器的服务中的角度json数据

时间:2013-12-18 01:40:31

标签: javascript json angularjs service controller

嘿伙计们我是棱角分明的新手,并且对javascript不太熟练。此设置可以很好地提取json数据,但是当我更改对象中的某些属性时,它们会在我更改视图并重新加载控制器时重置。任何有关如何处理此问题的帮助或指导将不胜感激。

app.controller('MainCtrl', function ($scope, $location, Quiz) {
    $scope.quiz = {};

    Quiz.getQuestions(function(data) {
      $scope.quiz = data;
    });
});

app.service('Quiz', function($http) {
  this.getQuestions = function(callback) {
    $http.get('questions/questions.json').success(function(data) {
      if (callback) {callback(data);}
      return data;
    });
  };
});

1 个答案:

答案 0 :(得分:0)

$http获取请求是否会在后续调用getQuestions()覆盖对象时重复出现?如果是这样,也许

app.service('Quiz', function($http) {
  var _data;
  this.getQuestions = function(callback) {
    if (_data) {
       callback(_data); 
    }
    $http.get('questions/questions.json').success(function(data) {
      _data = data;
      if (callback) {callback(data);}
      return data;
    });
  };
});