Ionic AngularJS没有过滤数据。
Ionic AngularJS没有过滤数据。
这是我的控制器:\n
$scope.professionList = []; $scope.searchText = ''; $scope.$on('$ionicView.enter', function() { PeopleSearchService.setSearchParams(undefined); }) $scope.$on('$ionicView.loaded', function() { $scope.professionList = Constants.professionList(); })
\n我有这个简单的HTML:\n
{{profession.name}}
\n在控制器中,我有\n $scope.searchText = \'\';\n在文本框中输入任何内容都不会过滤列表。
Ionic Angularjs无法过滤数据的原因是,searchText
输入框位于ng-if="showSearchBox"
中,这就是为什么它将searchText
作为子作用域变量放在ng-if
元素的子作用域中(ng-if
/ng-repeat
会创建原型继承的子作用域)。
为了避免这种问题,定义模型或使用controllerAs
模式时,始终遵循Dot Rule
,以避免作用域相关的问题。
Dot Rule
示例:
类似的答案可以在这里找到:类似问题的解答