2015-09-09 14 views
5

में सरणी से पहले मूल्य तक पहुँचने के लिए इस सरणीकैसे कोणीय जे एस एनजी-दोहराने

["236.jpg","239.jpg","294.jpg","748.jpg","157.jpg","446.jpg","871.jpg","778.jpg"] 

मैं

"236.jpg"

उपयोग करना चाहते है। नीचे दिया गया कोड जिसके नीचे मैं शीर्ष सरणी लाने के लिए उपयोग कर रहा हूं.अब मैं नीचे कोड का उपयोग करके पहला आइटम कैसे प्राप्त कर सकता हूं?

<tr ng-repeat="x in p"> 
    <td> 
    {{ x.images }} 
    </td> 
</tr> 

कृपया मुझे सॉल्शन खोजने में मदद करें।

यहाँ अधिक जानकारी के लिए पूर्ण कोड

{"info":[{"id":"11","name":"brown","description":"fasdfasd","size":"fasdf","color":"5a72fb","created_at":"2015-09-08 22:33:33","updated_at":"2015-09-08 22:33:33","images":"[\"236.jpg\",\"239.jpg\",\"294.jpg\",\"748.jpg\",\"157.jpg\",\"446.jpg\",\"871.jpg\",\"778.jpg\"]"},{"id":"13","name":"fasdf","description":"asdfghjkl","size":"fasdf","color":"5a72fb","created_at":"2015-09-09 11:48:31","updated_at":"2015-09-09 11:48:31","images":"[\"910.jpg\",\"504.jpg\",\"784.jpg\"]"}]} 


angular.module('myApp', []).controller('myCtrl', function($scope, $http){ 
     $http.get('test').success(function (data){ 
     $scope.p = angular.fromJson(data); 
     console.log(angular.fromJson(data)); 
     }); 
}); 

<tbody ng-controller="myCtrl"> 
    <tr ng-repeat="x in p"> 
    <td ng-if="x.images "> 
     {{ x.images | limitTo:$index }} 
    </td> 
    <td>{{ x.size }}</td> 
    </tr> 
</tbody> 

अब मुझे पूरा कोड के साथ मदद कृपया है। धन्यवाद।

+3

आप इस्तेमाल कर सकते हैं 'एनजी-अगर =" $ पहले "' 'अंदर एनजी-repeat' –

+0

यहाँ की जांच: https://docs.angularjs.org/api/ng/directive/ngRepeat ... ओलिवर स्मिथ का जवाब देखें। उसे वह मिल गया। –

+0

मैंने अपना प्रश्न अपडेट किया है। कृपया मुझे एक सोल्यूशन दें –

उत्तर

13

खैर बस निम्नलिखित काम करेंगे कर:

<td> 
    {{p[0]}} 
</td> 
1

अपनी हालत के लिए, आप ng-repeat अंदर ng-if उपयोग कर सकते हैं के रूप में पंकज टिप्पणी में कहा।

var app = angular.module('ExampleApp', []); 
 
    app.controller('appController', ['$scope', function($scope) { 
 
    $scope.p = { 
 
     "info": [{ 
 
     "id": "11", 
 
     "name": "brown", 
 
     "description": "fasdfasd", 
 
     "size": "fasdf", 
 
     "color": "5a72fb", 
 
     "created_at": "2015-09-08 22:33:33", 
 
     "updated_at": "2015-09-08 22:33:33", 
 
     "images": ['\"236.jpg\"','\"504.jpg\"','\"784.jpg\"'] 
 
     }, { 
 
     "id": "13", 
 
     "name": "fasdf", 
 
     "description": "asdfghjkl", 
 
     "size": "fasdf", 
 
     "color": "5a72fb", 
 
     "created_at": "2015-09-09 11:48:31", 
 
     "updated_at": "2015-09-09 11:48:31", 
 
     "images": ['\"910.jpg\"','\"504.jpg\"','\"784.jpg\"'] 
 
     }] 
 
    } 
 

 
    }]);
<!DOCTYPE html> 
 
<html lang="en"> 
 

 
<head> 
 
    <meta charset="utf-8"> 
 
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.18/angular.js"></script> 
 
    <script src="http://www.jeasyui.com/easyui/jquery.easyui.min.js"></script> 
 
    <script src="script.js"></script> 
 
</head> 
 

 
<body ng-app="ExampleApp"> 
 
    <div ng-controller="appController"> 
 
<div ng-repeat="x in p.info"> 
 
    {{ x.images[0] +" are first"}} 
 
</div> 
 
    </div> 
 
</body> 
 

 
</html>

अपने कोड के लिए काम Link

आशा है कि यह समझना :)

+0

कृपया मेरा कोड दोबारा देखें। मैंने सवाल अपडेट किया है। –

+0

और अब अगर मैं छवियों का पहला मान "236.jpg" लेना चाहता हूं, तो मुझे क्या करना है? –

+0

कोड संपादित किया गया। मुझे लगता है कि यह अब काम करेगा। – Thinker

6

वहाँ यह करने के लिए कई तरीके हैं मदद करता है। फ़िल्टर सीमा का उपयोग करने का एक तरीका होगा: 1 एनजी-दोहराना के साथ।

प्रयास करें इस

<tr ng-repeat="x in p | |limitTo:1"> 
    <td> 
    {{ x.images }} 
    </td> 
</tr> 
+0

है, यह "x में p | limitTo: 1" नहीं होना चाहिए? – Aivar

संबंधित मुद्दे