angular 如何按照 "yyyy-mm-ddT00:00:00" 这样的格式按日期订购商品
angular how to order item by date from format like "yyyy-mm-ddT00:00:00"
我得到一个 json 对象,其中包含项目数
"[{"StartDate":"2015-01-16T00:00:00","EndDate":"2015-01-20T00:00:00"},
{"StartDate":"2015-01-15T00:00:00","EndDate":"2015-01-16T00:00:00"}]"
我想在客户端 table 使用 DESC 订单
这是请求和returnjson答案
的功能
function getTrips() {
//set loading indicator
vm.searchData.isLoading = true;
return datacontext.getTrips(vm.searchData.getTripsFilter)
.success(function (result) {
try {
//set loading indicator
vm.searchData.isLoading = false;
tripData.trips = result;
if (!tripData.trips) {
logWarning('dont find trips:(');
return;
}
//post-process trips for display
angular.forEach(tripData.trips, tripData.processTrip);
//start filtering trips pager
vm.searchData.filterTrips();
log('found' + tripData.trips.length + ' to this search.');
return tripData.trips;
} catch (e) {
logError('error searching trips!', e);
}
})
.error(function (data) {
logError('error searching trips!', data);
vm.searchData.isLoading = false;
});
}
我想 mybe 添加控制顺序的全局参数(但我得到一个字符串)或者 angular 上有一个我不知道的按日期自动排序功能:|
在此先感谢您的帮助
如果您只是要求简单排序,那么就在这里
HTML
<div ng-controller="DatesCtrl">
<div ng-repeat="d in dates | orderBy:identity:true" ng-bind="d | date:'medium'"></div>
</div>
Js
var myApp = angular.module('myApp', []);
myApp.controller('DatesCtrl', ['$scope', function($scope) {
$scope.identity = angular.identity;
$scope.dates = [ new Date("2015-01-16T00:00:00"), new Date("2015-01-15T00:00:00"), new Date("2015-01-17T00:00:00") ];
}]);
由于日期值的格式设置方式,无论是将它们作为字符串按字母顺序排序,还是首先将它们转换为 Date
对象,都会得到正确的排序。
因此,您可以使用内置的 orderBy
过滤器对数据进行排序。这可以在您的控制器中完成:
tripData.trips = $filter('orderBy')(tripData.trips, 'StartDate', true);
或者在您看来:
<div ng-repeat="trip in trips | orderBy:'StartDate':true">...</div>
我得到一个 json 对象,其中包含项目数
"[{"StartDate":"2015-01-16T00:00:00","EndDate":"2015-01-20T00:00:00"},
{"StartDate":"2015-01-15T00:00:00","EndDate":"2015-01-16T00:00:00"}]"
我想在客户端 table 使用 DESC 订单
这是请求和returnjson答案
的功能 function getTrips() {
//set loading indicator
vm.searchData.isLoading = true;
return datacontext.getTrips(vm.searchData.getTripsFilter)
.success(function (result) {
try {
//set loading indicator
vm.searchData.isLoading = false;
tripData.trips = result;
if (!tripData.trips) {
logWarning('dont find trips:(');
return;
}
//post-process trips for display
angular.forEach(tripData.trips, tripData.processTrip);
//start filtering trips pager
vm.searchData.filterTrips();
log('found' + tripData.trips.length + ' to this search.');
return tripData.trips;
} catch (e) {
logError('error searching trips!', e);
}
})
.error(function (data) {
logError('error searching trips!', data);
vm.searchData.isLoading = false;
});
}
我想 mybe 添加控制顺序的全局参数(但我得到一个字符串)或者 angular 上有一个我不知道的按日期自动排序功能:|
在此先感谢您的帮助
如果您只是要求简单排序,那么就在这里
HTML
<div ng-controller="DatesCtrl">
<div ng-repeat="d in dates | orderBy:identity:true" ng-bind="d | date:'medium'"></div>
</div>
Js
var myApp = angular.module('myApp', []);
myApp.controller('DatesCtrl', ['$scope', function($scope) {
$scope.identity = angular.identity;
$scope.dates = [ new Date("2015-01-16T00:00:00"), new Date("2015-01-15T00:00:00"), new Date("2015-01-17T00:00:00") ];
}]);
由于日期值的格式设置方式,无论是将它们作为字符串按字母顺序排序,还是首先将它们转换为 Date
对象,都会得到正确的排序。
因此,您可以使用内置的 orderBy
过滤器对数据进行排序。这可以在您的控制器中完成:
tripData.trips = $filter('orderBy')(tripData.trips, 'StartDate', true);
或者在您看来:
<div ng-repeat="trip in trips | orderBy:'StartDate':true">...</div>