2016-11-13 31 views
-1

我收到來自後端的響應並保存在我的控制器中的「allinfo」varable中。接受的回答數據是:人的姓名,人的DOB和人的愛好。人的愛好是可以n的數組。需要刷新顯示數組,並顯示在json數據中,並通過ng-repeat顯示

在我看來,我已經在allinfo中應用重複ovr所有信息作爲信息,並在info.hobby中重複作爲滾動的愛好。

我面對的問題是,當我在我的視圖中重複allinfo中的信息時,它顯示名稱和Dob,但對於hooby,我需要進行反思,然後顯示愛好。

我有控制檯的響應,發現所有的信息都收到Hobby對象,但事情是它正在接收空數組,並在一次刷新後刷新數組的所有元素。

幫我解決這個問題。預先感謝您

+0

請分享一些代碼。 – AndreaM16

+0

實際上我現在沒有代碼。我會在某個時候分享它。 – Mohammed

回答

0

試試這個會按您的期望工作。

在下面的代碼中,我假設responseData具有與從服務器獲取的數據相同的格式。

var myApp = angular.module('myApp',[]); 
 

 
function MyCtrl($scope) { 
 
    $scope.responseData = [ 
 
      { 
 
      "name" : "Rohit", 
 
      "dob" : "04-11-1991", 
 
      "hobby" : [["singing"],["writing"]] 
 
      }, 
 
      { 
 
      "name" : "Jindal", 
 
      "dob" : "04-11-1990", 
 
      "hobby" : [["playing"],["making friends"]] 
 
      } 
 
    ]; 
 
    
 
    var hobbiesData = []; 
 
    for (var i in $scope.responseData) { 
 
     hobbiesData = []; 
 
     for (var j in $scope.responseData[i].hobby) { 
 
     for(var k in $scope.responseData[i].hobby[j]) 
 
     hobbiesData.push($scope.responseData[i].hobby[j][k]); 
 
     } 
 
      var hobbies = hobbiesData.join(); 
 
      $scope.responseData[i].hobby = hobbies; 
 
    } 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="myApp" ng-controller="MyCtrl"> 
 
    <div ng-repeat="data in responseData"> 
 
     Name : {{data.name}}<br> 
 
     Date of Birth : {{data.dob}}<br> 
 
     Hobbies : {{data.hobby}} 
 
    </div> 
 
</div>

+0

非常感謝。更多的事情我想提一下,我在ng.hob中重複使用愛好,我也使用了join(','),以使數組成爲「愛好」:[[playing] ,[make friends]「]應該以逗號分隔,對不起,最近說這個東西,這個已經更正了。現在你怎麼改變這個根據這個更正後的代碼 – Mohammed

+0

但是愛好數組是用逗號隔開only.check'code snippet' –

+0

是的你是非常正確的,但由於錯誤我忘記提及,在我的迴應中,我接收陣列的數組,如「愛好」:[[playing] [make friends]]所以如果現在應用ng repeat在此顯示輸出作爲愛好:[玩] [交朋友]。這就是爲什麼我使用加入,然後在刷新它顯示爲興趣愛好:玩,交朋友。我知道,我犯了錯誤的地方..我是新手在angualrjs。 – Mohammed