Tôi đang cố gắng thiết lập ngTable trong ứng dụng của mình, nhưng nó không hỗ trợ lọc theo Ngày và tôi không thể tìm ra cách triển khai nó. Ban đầu tôi đã có ngày trong dữ liệu của tôi dưới dạng dấu thời gian, cho phép tôi sắp xếp cột đúng do bản chất tăng dần của dấu thời gian, nhưng rõ ràng là tôi không thể nhập tháng 9 và lọc dữ liệu.AngularJS ngTable lọc theo Ngày
// Example row data from data array
{
"index": 0,
"id": "54587313ac91d561b246bf90",
"user": "user3",
"date": 1390054873445,
"status": "in-progress"
}
Tôi đã thử đặt nó thành chuỗi, nhưng khi bạn lọc hoặc sắp xếp nó không tạo ra thứ tự asc/desc thay vào đó nó được sắp xếp theo thứ tự dữ liệu.
// Date output not in asc/desc if use date string
September 8, 2014
September 27, 2014
September 23, 2014
September 26, 2014
Tôi đã xem qua ngTable và thấy rằng tôi có thể thay đổi tiêu đề của bảng, vì vậy tôi đã lấy một bản sao để chỉnh sửa và thêm một số loại bộ lọc hoặc chỉ thị tùy chỉnh? Có lẽ tôi nên sử dụng một chuỗi ngày khác nhau? Tôi đã tạo một Plunker của ứng dụng bằng cách sử dụng dữ liệu dấu thời gian, được lọc để hiển thị cho người dùng và có thể sắp xếp, nhưng tôi muốn có thể lọc bằng cách nhập tháng, ngày và/hoặc năm, tức là. 2014, tháng chín vv
// Example date column setup
<td data-title="'Date'"
sortable="'date'"
filter="{ 'date': 'text' }"
ng-bind="(doc.date | date:mediumDate)"></td>
CẬP NHẬT Tôi chỉ nhận thấy ở dưới cùng của ngTable.js rằng bạn có thể thả trong các bộ lọc của riêng bạn. Tôi cuối cùng đã tìm ra cách để tải một tập tin bên ngoài để một bộ lọc tùy chỉnh thay vì ngTemplates nội tuyến:
<td data-title="'Date'"
sortable="'date'"
filter="{ 'date': 'date' }" // add name of filter (date), to the value of assoc array
ng-bind="(loan.date | date:mediumDate)"></td>
hoặc để đặt các tập tin trong một nơi hữu ích hơn trong ứng dụng của bạn:
<td data-title="'Date'"
sortable="'date'"
filter="{ 'date': 'date', templateURL: '/www/app/ng-table/filters/date.html' }"
ng-bind="(loan.date | date:mediumDate)"></td>
Vẫn không chắc chắn phải làm gì, nhưng sẽ tiếp tục cố gắng để có được điều này làm việc, tôi thực hiện một Plunker của những gì tôi có cho đến nay nếu điều đó giúp. Đây có phải là chỉ thị trong date.html không?
hãy thử chuyển đổi ngày để định dạng ISO, để lọc làm việc – harishr
Hi @harish, mà tạo ra kết quả tương tự như dấu thời gian với tất cả các dữ liệu cột không hiển thị như bộ lọc ngTable không thấy ngày 12 tháng 1 năm 2014, mà thay vào đó là định dạng ISO. – mtpultz