どういうわけかフィルターでそれを行う必要があると思いますが、理解できませんでした。以下のコードは私が作成したものですが、非常に非効率的であると確信しています
$scope.isInList = function(ident){
var answer = false;
if($scope.List){ // stops it from firing before it has something to check against
var length = $scope.Lister.list[number].ingr.length;
for (var i=0; i < length; i++){
if($scope.Lister.list[number].thing[i].id == ident){ var answer = true;}
}
}
return answer;
};
何も見つからない場合、関数は false を返します。
ng-hide="isInList(ident)"
Break を追加できることがわかりました。少し良くするために true の場合に、私はまだより甘い角度の方法を望んでいます。
編集:
ng-repeat tho で 1 つのオブジェクトを削除したいだけです。
<ul>
<li ng-repeat="item in List">item.name <button ng-click="addToAnotherList(item.id)">Add</em></li>
</ul>
フィルターで要素を削除するだけにできますか?
また、フィルターは変数の配列をチェックできますか?
別のリストから未定義の数の id-s をチェックするフィルターが必要です (アイテムがまだそのリストにないことを確認するため)
検索結果ごとに ng-hide が実行され、for ループがリスト内のすべての値をチェックし、重複を避けるようになりました