2017-10-01 3 views
1

私はすでにこれについて読んだことがありますが、このようなことをする方法を理解できませんでした。ng-repeatの複製を削除します

<div class='dropdown2'> 
    <span>Seleziona Campionato:  </span> 
    <select class='opzioni' ng-model="campionatoSelected"> 
       <option ng-repeat="team in teams | filter: {Paese:nazioniSelected} track by $index" value="{{team.Campionato}}">{{team.Campionato}} 
      </option> 
    </select> 
</div> 

これは私に複数のチームがあるすべてのリーグ(campionato)の原因となる重複を与えるコードです。どのように私はこの選択肢から重複をカットすることができますか?

答えて

1

あなたはモジュールangular-filterhttps://github.com/a8m/angular-filter)が提供するuniqueフィルタを使用して、フィルタリングに使用するプロパティを使用して、すべての重複を遮断することができます。

<select class='opzioni' ng-model="campionatoSelected"> 
    <option ng-repeat="team in teams | filter: {Paese:nazioniSelected} | unique: 'MY_PROPERTY_NAME' track by $index" value="{{team.Campionato}}">{{team.Campionato}} 
    </option> 
</select> 

あなたはまた、あなたのプライベートフィルタと使用を定義することができますサードパーティのモジュールを追加することなく、両方の操作を行うためのものです。

p.s.私はイタリア人ですので、あなたの意見は分かりますが、英語の変数/関数名を使用しようとすると、どこかに投稿したり、一般的に共有したい場合には、コードをはるかに読みやすくします。

希望助けになる!

+0

ok私はコードのこの部分を改善します。しかし、このユニークな私のために働いていない。チームアレイにはCampionatoというフィールドがあります。私はこれをするとき:チームの

+0

の中には何も表示されません。私の悪いことに、 'unique'フィルタはデフォルトでは利用できません。多くの便利なフィルタを含む以下のモジュールを追加するか、答えを変更して、サードパーティの依存関係を追加せずに自分自身:https://github.com/a8m/angular-filter – quirimmo

関連する問題