0
<tr ng-repeat="materialOffer in Vm.materialoffers track by materialOffer.id" 
    ng-if="!materialOffer.containMaterial && $index >= startIndex && $index < endIndex"> 
</tr> 

私はmaterialoffersという名前のオブジェクトの配列を持っています。配列の各要素は、containMaterialという名前のプロパティを持つオブジェクトです。いくつかのオブジェクトはこのプロパティーを持っていますが、他のオブジェクトはオブジェクトとして持っていますが、nullです。私はcontainMaterialプロパティにオブジェクトを持つオブジェクトだけを表示したいと思います。私はページ分割のために$index,startIndexおよびendIndexも使用しています。私が午前問題は、例えば、アレイはobject4横断するとき、オブジェクトので2でなければならないが、$indexが3になり、この

[{ 
    "object1": { 
    containMaterial:obejct; 
    } 
}, { 
    "object2": { 
    containMaterial:obejct; 
    } 
}, { 
    "object3": { 
    containMaterial:Null; 
    } 
}, { 
    "object4": { 
    containMaterial:obejct; 
    } 
}] 

似ているcontainMaterialnullを持つ$indexが同様にそれらのオブジェクトを追跡していることですng-ifによって隠されています。

+0

は、我々はあなたがいただきました!内部に見たい – Olli

+0

オブジェクトを追跡している方法を見ることができますか? –

+0

代わりに提供するようにページをトラッキングする – Olli

答えて

1

あらかじめフィルタをかけておくのはなぜですか?あなたのHTMLで

:あなたのJSで

<tr ng-repeat="materialOffer in Vm.filteredMaterialOffers() track by materialOffer.id" 
    ng-if="$index >= startIndex && $index < endIndex"> 
</tr> 

$scope.Vm.filteredMaterialOffers = function() { 
    Vm.materialoffers.filter(function (x) { 
     return x.containMaterial ; 
    }); 
}; 
+0

実際に私はそれを考えていましたが、表示されているng-repeatのテンプレートだけを追跡する$ indexの代わりに何かがあるかどうか不思議でしたとにかく助けてくれてありがとうございました –

+0

'ng-if'の代わりに' limitTo'フィルタが組み込まれています – charlietfl

関連する問題