我正在使用 AngularJS 上的指令执行我的第一步,但该指令对我不起作用。
我有一个ng-repeat
清单
<ul ng-after-list-filter>
<li ng-repeat="item in items | filter:activeFilter.filterType = activeFilter.filterValue">...</li>
</ul>
正在被过滤$scope.activeFilter.filterValue
我正在尝试创建ng-after-list-filter
指令,以便在过滤列表后执行它,以便我可以对那个新ul
元素进行 dom 操作。
这是我的指令不起作用:
myModule.directive('ngAfterListFilter',function(){
return {
restrict: 'A',
link: function(scope,element,attrs) {
scope.$watch(scope.activeFilter.filterValue, function(val) {
console.log('do something here');
});
}
}
});
我如何使它工作?我假设 scope.activeFilter.filterValue 没有被更新,但是 - 它在范围内,并且它确实被更新并且列表被过滤。我正在尝试观察这个变量,为什么它不起作用?
有没有更好的方法来创建这个指令?我的意思是 - 我想在列表更新时运行 DOM 更改(调整事物的大小)。那么有没有办法听
$('ul').html()
呢?我试过了,但它输出了一个错误,我将原始文本放入 javascript