これは単純でなければならないようですが、私は答えを見つけることができません。angularjs - 複数のモデルによるフィルタ
のは、私は次のように定められたデータの配列を、持っているとしましょう:
friends = [{name:'John', age:60, location:'Brighton', street:'Middle Street'},
{name:'Bob', age:5, location:'Brighton', street:'High Street'}];
さて、私はそうのようなテキスト入力に基づいてデータをフィルタリングする:
<input ng-model="searchText">
<ul>
<li ng-repeat="friend in friends | orderBy:'name' | filter:searchText">
{{friend.name}} - {{friend.location}}</li>
</ul>
このうまく動作しますが、フレンドオブジェクトのすべての属性(名前、年齢、場所、通り)に基づいて入力テキストをフィルタリングします。名前と場所のみに基づいてフィルタリングすることができるようにしたいと思います(年齢と通りは無視してください)。これはカスタムフィルタなしで可能ですか?
ありがとう、うまく動作します。言及する価値があるのは、テキストを小文字に変換し、if(!$ scope.searchText)が1を返す必要があることだけです。それを働かせるために。 – user2424495
「if(!$ scope.searchText)return 1;」を追加するだけです。検索テキストが入力されていない場合、すべての結果(フィルタリングなし)を返すようになります。これが必要な場合は、私が挙げるアプローチに対するこのアプローチのメリットです。 – KayakDave