使用Angular Factory作为服务的角度ui网格排序算法

时间:2015-10-19 23:08:01

标签: angularjs angular-ui-grid

我无法弄清楚如何将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(),

2 个答案:

答案 0 :(得分:0)

你应该使用匿名函数

sortingAlgorithm: function(a,b){return sortFN.sortAlphaNum(a,b)}

答案 1 :(得分:0)

代替:

sortingAlgorithm: sortFn.sortAlphaNum()

使用此:

sortingAlgorithm: sortFn.sortAlphaNum