2016-04-14 15 views
0

Tüm ürünleri selecte categoryId altında görüntülemeye çalışıyorum. Numune JSON dosyası:Angularjs, sadece seçilen kategori ile ilgili olan ürünleri göster

[{ 
"product_id":"1", 
"product_name":"Name of the book 1", 
"product_image":"image Url 1", 
"category_id":"1" 
}, 
{ 
"product_id":"2", 
"product_name":"Name of the book 2", 
"product_image":"image Url 2", 
"category_id":"2" 
}, 
{ 
"product_id":"3", 
"product_name":"Name of the book 3", 
"product_image":"image Url 3", 
"category_id":"3" 


}] 

aşağıda gibi denetleyicisi var. Json dosyasındaki verileri okudum. Örnekte gördüğünüz gibi, gerçek ürün adını konsolda görüntüleyebilirim ancak html sayfasında gösteremiyorum.

<ion-item class="item-remove-animate item-avatar item-icon-right" ng-repeat="p in data" type="item-text-wrap"> 
    <h2>{{p.product_name}}</h2>  
    </ion-item> 

Can herkes yardım edin:

.controller('CategoryDetailCtrl', function($scope, product,$stateParams) { 
product.fetch().then(function(data) { 
    $scope.dataq=data; 
     for (var i=0; i < $scope.dataq.length; i++){ 
      if ($scope.dataq[i].product_id == $stateParams.categoryId){ 
       $scope.data=data; 
       console.log($scope.data[i].product_name); 
      } 
     } return null; 
}) 


}) 

Html örnek aşağıda gibidir?

+0

$ scope.data = verileri; bu bölüm yanlış. Sadece eşleştirilen dizinin değerini ben ile atamalıyım ama nasıl yapacağımı bilmiyorum. – arslan

cevap

0

html yan

.controller('CategoryDetailCtrl', function($scope, product,$stateParams) { 
product.fetch().then(function(data) { 
    $scope.data=data; 
    $scope.catId=$stateParams.categoryId; 


}) 

ve ikinci filtre fonksiyonu gibi denetleyici düzenleme yerine kullanarak sorun çözüldü zaman kontrol biriminde

ng-repeat="p in data | filter: {category_id: catId}" 
İlgili konular