Ruby on Rails バックエンドで AngularJS の ng-table を使用しています。一度に 10 行を表示するために ng-table を使用しており、サーバー側で検索/並べ替えとページネーションを行っています。
私が抱えている問題は、フィルターがキーストロークごとにサーバーにリクエストを送信していることです。送信ボタンを介してフィルターをサーバーに送信するまで、ng-table を待機させることは可能ですか?
$scope.tableParams = new ngTableParams({
page: if page then page else 1,
count: 10,
sorting: { invoice_no: 'desc'}
}, {
total: 0,
getData: ($defer, params) ->
Invoice.query params.url(), (data) ->
params.total($scope.total)
# put params in url
$location.search(params.url())
# Paginate / update table with new data
$defer.resolve(data)
})
私の現在の見解
<table ng-table="tableParams" show-filter="true" class="table">
<tr class='listing' ng-repeat="invoice in $data">
<td data-title="'Invoice No.'" sortable="'invoice_no'" filter="{'invoice_no':'text'}">
{{invoice.invoice_no}}
</td>
</tr>
</table>