Вызов функции на md-order-by
не работает.Итак, вам нужно изменить свойство date для pacients.data
объектов.Вы говорите, что получаете его в виде строки ДД / ММ / ГГГГ, верно?Так что просто манипулируйте массивом pacients.data и измените свойство даты на объект со своими собственными свойствами в качестве значения & ts (отметка времени) в представлении, которое вы можете связать date.vale
& в md-order-by
, которое вы можете связать date.ts
.
Для манипуляции я создал один пример с функцией:
$scope.addDateTimestamps = function() {
var arrData = $scope.pacientes.data;
var newData = arrData.map(function(item,index) {
var dateString = item.date;
var dateParts = dateString.split("/");
var dateObject = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]);
item.date = {'value': dateString, 'ts': dateObject.getTime()};
return item;
});
$scope.pacientes.data = newData;
}
Так что эта функция преобразует дату ДД / ММ / ГГГГ в объект даты и затем получает метку времени.Вызывайте эту функцию, когда вы получаете данные из сервиса и создаете модель.Вы можете следовать нижеприведенному коду, где я добавил поле даты со связыванием и сортировкой строковых значений на основе отметки времени.
В качестве альтернативы вы можете даже просто изменить свойство даты со строки объектов массива на отметку времени, а затем при просмотре вы можете использовать датуфильтр для отображения в разных форматах и в порядке упорядочения по дате (ts)
Пример Codepen