Angularでかんばんボードアプリを作成しました。これで、フィルタリングされたPost-Itsポイントの合計とカウントを入れたいと思います:AngularJS - 入れ子にされたng-repeatでフィルタリングされた孫のアイテムを合計する方法
私はすべてのフィルタ処理後のを反復処理し、正常に動作している彼らのポイントを、合計するsumPointsFilter
を使用する
ng-bind
に使用し、その後、
filteredPostIts
エイリアスに私のフィルタ処理後のその割り当てる
<input type="text" ng-model="searchText">
<div ng-init="col.TotalPoints = 0" ng-repeat="col in columns">
<h3>{{col.Title}} - ({{ col.TotalPoints?? }} Pts.)</h3>
<div ng-init="subCol.Points = 0" ng-repeat="subCol in col.SubColumns">
<h3>{{subCol.Title}} - {{ subCol.Points }} Pts.</h3>
<div ng-show="false" ng-bind="subCol.Points= (filteredPostIts| sumPointsFilter:'Points')" ></div>
<div ng-repeat="postIt in filteredPostIts = (subCol.PostIts | filter:searchText)">
<p>#{{postIt.Id}}</p>
<p>{{postIt.Title}}</p>
<p>{{postIt.UserName}}</p>
<p>{{postIt.Points}} Points</p>
</div>
</div>
</div>
。サブ列ポイントは、検索入力に何らかのテキストを入力して、後のフィルタリングを開始するとすぐに再計算されます。
ここでは、列全体の合計ポイントを計算したいと思います。その合計は、そのサブカラムの合計です(フィルタリングされたポストを考慮)。
これはJSFiddleです。最初の列は "N oo Iniciado"(開始されていない)で、 "Backlog"という1つのサブカラムがあります。 2番目の列は「Emandamento」で、2つのサブカラム(「Executando」と「Aguardando」)があります。
は、例えばマルチェロを入力してみてください、そして、それはマルチェロの後にそのようにフィルタリングして、サブ列のためのポイントを再計算します。
これをどのように達成できますか?あなたはかなりのビットはそのjsfiddleに行くが、私は、私はあなたが何ができるかを見ると考えています
ことができます列とサブ列の範囲変数を設定してjsfiddleを作成しますか? – r0m4n
さて、私はちょっと待ってください。 – Alisson
@ r0m4n JSFiddleを追加しました。複雑すぎるかどうか教えてください。シナリオを単純化しようとしました。 – Alisson