我无法弄清楚如何将Angular Factory服务传递到UI-Grid选项中的sortingAlgorithm选项。每次我这样做都给我一个控制台错误,我不是一个功能。这是我的工厂:
.factory('sortFn', function(){
return{
sortAlphaNum: function (a, b) {
var NUMBER_GROUPS = /(-?\d*\.?\d+)/g;
var aa = String(a).split(NUMBER_GROUPS),
bb = String(b).split(NUMBER_GROUPS),
min = Math.min(aa.length, bb.length);
for (var i = 0; i < min; i++) {
var x = parseFloat(aa[i]) || aa[i].toLowerCase(),
y = parseFloat(bb[i]) || bb[i].toLowerCase();
if (x < y) return -1;
else if (x > y) return 1;
}
return 0;
}
};
})
和
sortingAlgorithm: sortFn.sortAlphaNum(),
答案 0 :(得分:0)
你应该使用匿名函数
sortingAlgorithm: function(a,b){return sortFN.sortAlphaNum(a,b)}
答案 1 :(得分:0)
代替:
sortingAlgorithm: sortFn.sortAlphaNum()
使用此:
sortingAlgorithm: sortFn.sortAlphaNum