AngularJS orderBy日期排序不正确
我在AngularJS orderBy日期排序不正确,angularjs,Angularjs,我在php中编写了一个函数,用于获取对象列表,每个对象中都有一个字段added_date。我使用了日期过滤器以dd-MMM-yyyy格式显示日期。由于added_date是字符串格式,我尝试将其转换为date对象,但输出仍然没有排序。有人能帮我理解我在这里遗漏了什么吗 控制器代码: $scope.getData = function () { TestService.getData($scope.id).then(function (data) { if(data){ $
php
中编写了一个函数,用于获取对象列表,每个对象中都有一个字段added_date。我使用了日期过滤器以dd-MMM-yyyy
格式显示日期。由于added_date是字符串格式,我尝试将其转换为date对象,但输出仍然没有排序。有人能帮我理解我在这里遗漏了什么吗
控制器代码:
$scope.getData = function () {
TestService.getData($scope.id).then(function (data) {
if(data){
$scope.testList = angular.copy(_.map(data.testArray, function (testInputs) {
_.each(testInputs, function (testInput, key) {
testInput.added_date = new Date(testInput.added_date);
});
return testInputs;
}));
}
});
};
HTML:
<tbody data-ng-repeat="(pIndex, testInputs) in testList | orderBy: $parent.orderBy: reverse">
期望输出:
07-Apr-2020
19-May-2020
20-May-2020
01-Jun-2020
04-Jun-2020
数据。testArray
在添加日期进行分组。分组时使用strotime
将日期转换为毫秒。看起来是这样的:
{
"institution": "ins1",
"details": [
[
{
"id": "11",
"added_date": 1591228800000,
"subject": "subject1",
"grade": "A"
}
],
[
{
"id": "22",
"added_date": 1590969600000,
"subject": "subject2",
"grade": "A"
},
{
"id": "33",
"added_date": 1590969600000,
"subject": "subject3",
"grade": "A+"
},
{
"id": "44",
"added_date": 1590969600000,
"subject": "subject4",
"grade": "B+"
}
]
]
}
蒂亚 您可以尝试按键订购:
<body
data-ng-repeat="(pIndex, testInput) in testList | orderBy: 'added_date'">
您可以尝试按键订购:
<body
data-ng-repeat="(pIndex, testInput) in testList | orderBy: 'added_date'">
你可以发布一个
数据的示例吗。testArray
编辑了问题以包含数据。testArray。你可以发布一个数据的示例吗。testArray
编辑了问题以包含数据。testArray。我在使用-
进行反向操作时面临的问题是,我无法直接访问添加的日期
字段。该字段实际上是testInput。添加了\u date
。日期正在排序,但顺序不太正确。@luna现在结构不同了,在列表中列出。所以你不能按原样订购。为什么不转换为基本列表转换为基本列表。现在可以直接访问添加的_日期。非常感谢,@Maxim Shoustin。当使用-
进行反向时,我面临的问题是,我无法直接访问添加的日期
字段。该字段实际上是testInput。添加了\u date
。日期正在排序,但顺序不太正确。@luna现在结构不同了,在列表中列出。所以你不能按原样订购。为什么不转换为基本列表转换为基本列表。现在可以直接访问添加的_日期。非常感谢,@Maxim Shoustin。
<body
data-ng-repeat="(pIndex, testInput) in testList | orderBy: 'added_date'">
<tbody data-ng-repeat="(pIndex, testInput) in testList | orderBy: '-added_date'">