0

我想在列表視圖應用過濾器。每當我在打字輸入字段任何它篩選我的名單。我是能當我寫用戶名過濾當我寫「啪」,這是對用戶可見。實例它排序我的列表,並只顯示一行。這是正確的。但當我寫在「關鍵字過濾器」這是不可見的用戶它不過濾。換句話說,當我輸入「Angular js」第二個輸入字段(「關鍵字過濾器」)。它應顯示pab ..因爲「pab」有角js關鍵字。如何在不可見的角度js中應用濾鏡?

這裏是我的代碼 http://plnkr.co/edit/TccgJydcZNkXQGpnbbP0?p=preview

// Code goes here 

angular.module('myApp', []) 
    .controller('myCtrl', function($scope){ 

    $scope.users = [ 

    {firstname: 'john', lastname: 'smith', 

       keywords: ["HTML", "CSS", "JavaScript", "jQuery", "Photoshop"] 

    }, 
    {firstname: 'pab', lastname: 'due', 
      keywords: ["Ruby on Rails", "PostgreSQL", "AngularJS", "Node.js"] 

    }, 
    {firstname: 'bob', lastname: 'rand',   keywords: ["java", "php", "test", "jira"] 
} 

    ]; 

}); 

回答

4

在你ng-repeat你是不是你的關鍵字輸入濾波後 - 你錯過了。只要它包含如下:

<div ng-repeat="user in users | filter:userSearch | filter:{ keywords: keyword }"> 
+0

請提供plunker – user944513

+4

認真....?只需複製該行? –

+0

正在嘗試等待我正在嘗試 – user944513

0

你只需要添加第二個輸入相同的NG-型號:

ng-model="userSearch" 

<body ng-controller='myCtrl'> 
    <div> 
    <div> 
     <input type="text" placeholder="username search" ng-model="userSearch"> 
    </div> 
    <br> 
    <div> 
     <input type="text" placeholder="keyword search" ng-model="userSearch"> 
    </div> 
    </div> 

plunker:http://plnkr.co/edit/Nqp45xwrZqPLIWDtjGvQ?p=preview

希望可以幫助好運。

+0

問題在於,這不會僅針對關鍵字進行過濾,並且您無法同時過濾其他關鍵字和用戶名 –

+0

是的,因爲它是同樣的綁定你不能同時過濾兩個不同的單詞。 您的解決方案可以更好地解決問題。 –