智能 Table angular 过滤器不更新页面

Smart Table angular filter not updating the page

我创建了这个 plunker

https://plnkr.co/edit/zrSgAG3NctuveLTNgnZS?p=preview

如您所见,有一个全局搜索,您可以按类别搜索或单击 eyeColor 或性别等类别以按该类别进行过滤。过滤器效果很好。但是页脚上的页面不能正确反映数据大小。尽管过滤器没有缩小数据集,但页数没有改变。 我没有使用 st-filter,因为我需要支持点击和过滤,例如眼睛颜色和性别,您可以在其中点击要过滤的类别。

I am using searcQuery filter this way instead
      <input type="search" ng-model="vm.searchQuery" placeholder="Global search" class="input-sm form-control" />
.
.
.

    ng-repeat-start="artists in (displayedCollection | filter: vm.searchQuery)">

知道我做错了什么吗?

您必须直接调用 table api .search() 函数。默认情况下 smart-table 是单向的,不需要 ngModel(避免 sophisticated/complex 双向状态同步)。如果你想这样做,我建议你将你的行为包装在一个指令中,观察模型变化并调用 table api

app.directive('filter',function(){
    return {
        require:'stTable',
        scope:{
            filter:'='
        },
        link:function(scope,el,att,table){
                scope.$watch('filter',function(val){
                    table.search(val);
                });
        }
    }
})

plunker