2016-09-22 3 views
2

사용자 정의 어떻게 알고리즘 내부에서 열을 액세스 할 수 있습니다 Githubui-grid 맞춤 정렬 알고리즘 내부에서 현재 열 (필드) 이름을 가져 옵니까?

UI-Grid 같은 열에 대한 정렬을 정의합니다되면?

var myAwesomeSortFn = function(a,b, rowA, rowB, direction){ 

     // "Need to access the name (field) of column being sorted here"; 
     var column = "No Idea" 

     console.log("sorting by column " + column); 

     if (a == b) return 0; 
     if (a < b) return -1; 
     if (a > b) return 1; 


    }; 
+0

당신이 당신이 코드를 게시 할 수있는 서비스의 정의 'myAwesomeSortFn'을 호출합니까? –

+0

위의 Github 링크를 참조하십시오. – MishaT

답변

1

당신은 다음을 시도해 볼 수도 있습니다 ... (당신이 원하는 경우 또는 범위)

{ field: 'lastName', displayName: 'Last Name', sortingAlgorithm: MyService.getSortingAlgorithm('lastName') }, 

그런 다음

getSortingAlgorithm: function (columnName) { 
    return function(a, b, rowA, rowB, direction) { 
     console.log("sorting by column " + columnName); 

     if (a == b) return 0; 
     if (a < b) return -1; 
     if (a > b) return 1; 
    }; 
} 
+0

이것은 현재 내가하고있는 일이며, 작동하지만, 40 개 이상의 컬럼을 가질 때 많은 시간을 의미하고, 필드가 변할 때 유지 보수 비용이 추가된다는 것을 의미합니다. – MishaT

+0

ui-grid를 수정하지 않고도이 작업을 수행하는 유일한 방법 인 것처럼 보이기 때문에이 항목을 승인으로 표시 할 것입니다. 이로 인해 열이 노출되었습니다. – MishaT