Bug Report: Sorting with nested names in TdDataTableService.sortData
See original GitHub issueHi, Im using covalent 1.0.0-beta.5 and tried out the td-data-table with sorting capabilities. The problem I have is when we present data from a nested hierarchy (see example below) the sorting does not work.
Example:
columns: ITdDataTableColumn[] = [ {name: 'commitRef.commitTime', label: 'Updated', tooltip: 'Updated', sortable: true, format: (value) => this.datePipe.transform(value, 'yyyy-MM-dd HH:mm:ss')}, {name: 'commitRef.committer.name', label: 'Changed by', tooltip: 'Changed by', sortable: true} ];
Then when calling sortData in TdDataTableService it doesn’t retrieve the value from nested properties.
In my case above this would resolve into a[“commitRef.commitTime”], where it actually should have been something like a[“commitRef”][“commitTime”]
Issue Analytics
- State:
- Created 6 years ago
- Comments:8 (7 by maintainers)

Top Related StackOverflow Question
Took a look at this and came up with a possible solution. See the gif and the mock data structure.
[ { "score": { "value": 23, "level": "One level", "nested": { "value": 1, "level": "Two levels", "nested": { "value": 3, "level": "Three levels" } } }, "predicted": { "value": 45, "level": "One Level", "nested": { "value": 4, "level": "Two levels", "nested": { "value": 6, "level": "Three levels", "nested": { "value": 75, "level": "Four levels" } } } } }, { "score": { "value": 8, "level": "One level", "nested": { "value": 2, "level": "Two levels", "nested": { "value": 88, "level": "Three levels" } } }, "predicted": { "value": 10, "level": "One Level", "nested": { "value": 8, "level": "Two Levels", "nested": { "value": 10, "level": "Three levels", "nested": { "value": 2, "level": "Four levels" } } } } }, { "score": { "value": 6, "level": "One level", "nested": { "value": 89, "level": "Two levels", "nested": { "value": 44, "level": "Three levels" } } }, "predicted": { "value": 12, "level": "One Level", "nested": { "value": 3, "level": "Two Levels", "nested": { "value": 26, "level": "Three levels", "nested": { "value": 1, "level": "Four levels" } } } } }, { "score": { "value": 10, "level": "One level", "nested": { "value": 4, "level": "Two levels", "nested": { "value": 20, "level": "Three levels" } } }, "predicted": { "value": 22, "level": "One Level", "nested": { "value": 13, "level": "Two Levels", "nested": { "value": 96, "level": "Three levels", "nested": { "value": 14, "level": "Four levels" } } } } } ]Let me know if this seems correct at least visually and I will refactor a bit, add it to the data table demo page and add the PR.
See PR #786 no longer needed