/ng-table

Simple table with sorting and filtering on AngularJS

Primary LanguageJavaScriptBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Table + AngularJS

Build Status Coverage Status

Code licensed under New BSD License.

This directive allow to liven your tables. It support sorting, filtering and pagination. Header row with titles and filters automatic generated on compilation step.

Compatibility

For work in IE < 9 need jQuery, just add:

<!--[if lt IE 9]>
  <script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<![endif]-->

Plugins

Updates

v0.3.2 (master)

  • add pagination directive ngTablePagination (see usage)
  • rename filter.name to filter.$$name according to issue #196
  • add debugMode setting
  • add defaultSort setting
  • add filterDelay setting
  • add multisorting (click on header with Ctrl-key)
  • add css classes (ng-table-pager, ng-table-pagination, ng-table-counts)

v0.3.1

  • add support of header-class attribute
  • add fixes for compatibility with early versions of AngularJS
  • add data field to ngTableParams
  • Allow expressions in the sortable & filter attribute (Issue #93)

v0.3.0

v0.2.2

In functions that return data for the filters were removed .promise

$scope.names = function(column) {
    ...
    def.resolve(names);
    // return def.promise; - old code
    return def;
};

Installing via Bower

bower install ng-table

Development

We use Karma to ensure the quality of the code. The easiest way to run these checks is to use grunt:

npm install -g grunt-cli
npm install && bower install
grunt

The karma task will try to open Firefox and Chrome as browser in which to run the tests. Make sure this is available or change the configuration in karma.conf.js

Examples (from simple to complex)

Configuring ng-table

For a list of configuration options available, see Configuring your table with NgTableParams

PS

Let me know if you are using ng-table. It will motivate me to work harder. And if you like ng-table, just email me and add your website here Hope you like it, Thanks! :)


This project is part of Bazalt CMS.