У меня следующая структура:
let drives = [
{id: 1, moves:[
{moveId: 1, difference: 1},
{moveId: 2, difference: 2}]
},
{id: 2, moves:[
{moveId: 1, difference: -2}]
},
{id: 3, moves:[
{moveId: 1, difference: 5},
{moveId: 2, difference: 2},
{moveId: 3, difference: 4}]
},
{id: 4, moves:[
{moveId: 1, difference: 6}]
}
]
Теперь я хочу отсортировать массив дисков по разнице хода. Результат должен быть примерно таким (в зависимости от порядка сортировки).
let drives = [
{id: 2, moves:[
{moveId: 1, difference: -2}]
},
{id: 1, moves:[
{moveId: 1, difference: 1},
{moveId: 2, difference: 2}]
},
{id: 3, moves:[
{moveId: 2, difference: 2},
{moveId: 3, difference: 4},
{moveId: 1, difference: 5}]
},
{id: 4, moves:[
{moveId: 1, difference: 6}]
}
]
Я пытался сделать это с помощью lodash, используя этот код
_.orderBy(drives, 'moves.difference', 'asc');
Но это, похоже, ничего не делает.У кого-нибудь есть идеи, как с этим справиться?