簡體   English   中英

如何在角度 ui-grid 中實現外部過濾器?

[英]How to implement external filter in angular ui-grid?

我有一個 Angular 應用程序。 在使用 ui-grid 的應用程序中,並希望對每一列進行過濾。 我已經搜索了整個表,它的工作。 有我的 html:

<div class="col-md-12" ng-controller="FlatController as flat">
    <div class="search-wrapper">
        <div class="search-box">
            <input type="text" class="form-control" ng-model="flat.searchText" ng-change="flat.refreshData()" placeholder="Search...">
        </div>
    </div>
    <div class="ui-grid-wrapper">
        <div ui-grid="flat.gridOptions" ui-grid-resize-columns ui-grid-auto-resize id="grid1" class="grid"></div>
    </div>
</div>

這是我的控制器:

angular.module('flatCtrl', ['flatService', 'ngTouch', 'ui.grid', 'ui.grid.resizeColumns', 'ui.grid.moveColumns', 'ui.grid.autoResize', 'ngSanitize', 'ui.select', 'ui.date'])
        .controller('FlatController', ['Flat', 'socketio', '$filter', function(Flat, socketio, $filter){

            vm = this;
            Flat.allFlat()
                .success(function(data){
                    vm.flats = data;
                    vm.gridOptions = {
                        data: data,
                         columnDefs: [
                            {field: 'id', displayName: 'Id', visible: false},
                            {field: 'creator', displayName: 'Creator', visible: false},
                            {field: 'typelocal', displayName: 'Typ lokalu', visible: true},
                            {field: 'country', displayName: 'Kraj', visible: true},
                            {field: 'city', displayName: 'Miejscowość', visible: true},
                            {field: 'district', displayName: 'Dzielnica', visible: true}
                         ]
                    };
                    vm.refreshData = function() {
                        vm.gridOptions.data = $filter('filter')(vm.flats, vm.searchText, undefined);
                    };
    });

也許誰知道如何在我的 html 中為每個 ui-grid 列添加輸入?

您可以使用registerRowsProcessor

他們實際上在網站上有一個例子。 請看一下。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM