角度过滤器不会返回真值

时间:2016-11-23 16:40:43

标签: angularjs firebase angularfire

<input type="text" ng-model="searchBuddy" placeholder="search"  />
<div class="square">
  <div class="list no-padding" ng-repeat='buddy in buddyList | filter : search'>
    <a class="item item-avatar" href="#">
      <img src="{{buddy.photoURL}}">
      <h2>{{buddy.firstname}}</h2>
      <p>{{buddy.lastname}}</p>
    </a>
  </div>
</div>`  

这是我的HTML代码

$scope.search = function (item) {
  if($scope.searchBuddy == undefined || $scope.searchBuddy == '' ) {
    return false;
  } else {
    if(item.firstname.toLowerCase().indexOf($scope.searchBuddy.toLowerCase())!= -1) {
      return true;
    }
  }
  return false;
}

这是我的控制器代码

在我看到的示例中,如果输入searchbuddy为空,则会返回false,这会导致带有div的html ng-repeat现在显示任何内容。否则,如果输入某些内容并且它以某种方式从firstname获得某些内容,则它将返回true并显示与搜索输入相对应的数据。但在我的情况下,它不会,我不知道为什么。

3 个答案:

答案 0 :(得分:0)

你的第二个if语句中有错误。你指的是$ scope.searchText,它应该是$ scope.searchBuddy,因为那是你正在使用的模型值。

答案 1 :(得分:0)

将ng-model与过滤器一起使用

arrayValues

答案 2 :(得分:0)

SELECT
    YEAR('startDate'),
    DATENAME(Month,'startDate'),
    COUNT(*)
FROM incidents
GROUP BY 
    YEAR('startDate'),  
    MONTH('startDate'),
    DATENAME(Month,'startDate')
ORDER BY 
    YEAR('startDate'),
    MONTH('startDate')