AngularJS即使在后续的Get Requests

时间:2015-07-01 07:01:28

标签: javascript arrays angularjs

我正在我的离子应用中实现消息传递功能。在我的收件箱中,我GET请求一个api,它返回一个具有如下数据结构的数组:

[{id:1, from_user:1, to_user:2, message:"hello", has_been_read:false}] 

当我读取消息时,has_been_read值将变为true。问题是,当我回到收件箱并且页面重新加载时,项目消失

 $scope.insertProperty=function(){

        for(var i=0;i<$scope.users.length;i++){
            for(var j=0;j<$scope.users.length;j++){
                if($scope.users[i].id==$scope.messages[j].from_user)                 

                 $scope.users[i].message=$scope.messages[j].message;

            }
        }
    }

  //$scope.users0= [];
  $scope.users = [];

  $localStorage.messages = [];
  var getUser = function(id) {
        UserService.GetUserById(id, $localStorage.CurrentUser.auth_token)
        .success(function (data) {
          data = angular.fromJson(data);
            $scope.users.push(data);  
            $scope.insertProperty();
            $localStorage.messages.push(data);
            $scope.$broadcast('scroll.refreshComplete')
            console.log(angular.toJson($localStorage.messages))
        }).error(function(error, status) {
            alert(status);
            console.log(error);         
        });
    };

$scope.GetMyMessages = function(){
  UserService.GetMyMessages($localStorage.CurrentUser.id, $localStorage.CurrentUser.auth_token, -1, -1)
        .success(function (data) {
         console.log(data);       
         data = angular.fromJson(data);
         $scope.messages = data;
         angular.forEach(data, function(user){
                getUser(user.from_user)
         });

          }).
        error(function(error, status) {
          alert(status);
          console.log(error);         
      });
}

$scope.GetMyMessages();
})

在我的代码中我调用我的消息服务,我传递-1 / -1,它在列表中获取ALL(它们是开始/开始索引)..然后我继承以获取用户ID ...并合并2个数组所以我可以通过它的消息来关联用户。

GetMessages服务返回具有唯一from_user的所有has_been_read = false消息。数据结构如下所示:[{id:1,from_user:1,to_user:2,message:“hello”,has_been_read:false}]

然后GetUserById获取每个from_user的信息数据结构如下:[{id:1,username:“foo”}]

insertProperty方法将用户和消息放在一起

0 个答案:

没有答案