我从控制器到指令获取集合。我在哪里附加模板。
我需要在这里完成两件事
我的尝试都不行。任何人在这里澄清问题并对问题进行排序?
这是我的代码:
status,weather,longitude,latitude,timestamp
ok,rainy,10.12,17.45,14569003
ok,sunny,11.34,16.78,14569000
答案 0 :(得分:1)
怎么样?使用带有自己的过滤器的原生角度排序,也将整个对象传递给指令,因为使用3个独立的平面数组在那里工作可能很棘手。 plnkr
var temp = [
"<ul><li ng-repeat='obj in slice | myOrder:obj:reverse'>",
"<input ng-model='obj.pin' type='text'/></li></ul>"
]
app.filter('myOrder', function() {
return function(items, field, reverse) {
var filtered = [];
angular.forEach(items, function(item) {
filtered.push(item);
});
filtered.sort(function (a, b) {
return (parseInt(a.pin) > parseInt(b.pin) ? 1 : -1);
});
if(reverse) filtered.reverse();
return filtered;
};
});
app.directive("customGrid", function($timeout,$filter){
return{
scope:{
"pages":"="
},
template:temp.join(''),
link : function( scope, element, attrs ){
scope.slice = null;
$timeout(function(){
scope.slice = scope.pages;
console.log(scope.slice,scope.pages)
})
//console.log( sorted ); //not sorting
}
}
})
修改强> Plnkr without orderBy 不过,如果不了解细节,很难说。项目要求。我可以说,根据自己的经验,使用一些虚拟重复技术(或者在表格的情况下,使用一些与Angular一起使用的专用vanilla脚本)会更好。