我正在尝试在 div 中实现 ng-repeat 功能。为此,我需要先对数据进行排序(根据对象提供的排名),然后将其命名为 div。所以我正在创建一个自定义 OrderBy 函数。我的排序功能运行良好。但是,我总是得到相同的 div 顺序。(事实上,与我需要的完全相反)。我尝试使用反向功能,但它不起作用。
我的排序代码如下所示:
var res = {
"Toyota": 2,
"Ford": 1,
"Chrysler": 4,
"Hyundai": 3,
"Nissan": 5
};
sortedVal = Object.keys(res).sort(function (a, b){
return res[a] - res[b];
});
我的 HTML div 看起来像这样,
<div class="card" ng-repeat="name in data | orderBy: sortedVal ">
我在控制台中得到了正确的输出。但是,无论我做什么,div 总是按照下面给出的顺序排列。
日产、克莱斯勒、现代、丰田、福特。
我需要它们的顺序:福特、丰田、现代、克莱斯勒、日产。
注意:不要担心“数据中的名称”部分,它运作良好。我在使用“OrderBy”时遇到问题。