【问题标题】:Angular json data in service across controllers跨控制器服务的 Angular json 数据
【发布时间】:2014-01-06 01:02:57
【问题描述】:

大家好,我是 Angular 新手,对 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;
    });
  };
});

【问题讨论】:

标签: javascript json angularjs service controller


【解决方案1】:

$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;
    });
  };
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-04
    相关资源
    最近更新 更多