微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – 如何更改过滤器内的$scope变量

我需要在过滤器中更改$scope变量. $scope变量用于ng-show属性,并且信息仅在过滤器中加入,因为我有一些信息的ng-repeat并由一些过滤器应用,我需要知道过滤器何时删除我要显示的所有结果消息……这是一个例子:(这只是一个想法)

.controller("thing",function() {
   $scope.showtext = false;
})

.filter("filterText",function() {
   return function(@R_806_4045@ion) {
     if (@R_806_4045@ion == "") { /* NEED TO CHANGE $scope.showtext to true */ }
   }
})

HTML:

<div ng-view="showtext"> Some Text here </div>
<div ng-repeat="info in @R_806_4045@ion | filterText"></div>

谢谢.

解决方法

我同意你可能不希望首先在过滤器中更改数据的注释,但如果你真的很难,你可以通过在控制器内定义过滤器功能来实现这一点(而不是实际角度“过滤器”)然后只使用它:

ng-repeat="item in items | filter:myFilter()"

$scope.myFilter = function(item) {
    // access to scope here
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐