Sto cercando di cercare attraverso una serie di oggetti usando Underscore.js, ma non riesco a scegliere quello che voglio.Ottieni un oggetto dall'array che contiene un valore specifico
console.log(_.findWhere(response.data, { TaskCategory: { TaskCategoryId: $routeParams.TaskCategory } }));
Tuttavia, questo sta tornando undefined
$routeParams.TaskCategory
è uguale 301
Questo è un esempio di oggetti all'interno della matrice Cerco. Questi dati è rappresentata da data.response
[{
"TaskCategory": {
"TaskCategoryId": 201,
"TaskName": "TaskName"
},
"TaskCount": 1,
"Tasks": [{
"EventTypeId": 201,
"EventName": "Event Driver",
"EventDate": "0001-01-01T00:00:00",
"EventId": "00000000-0000-0000-0000-000000000000",
}]
},
{
"TaskCategory": {
"TaskCategoryId": 301,
"TaskName": "TaskName"
},
"TaskCount": 1,
"Tasks": [{
"EventTypeId": 201,
"EventName": "Event Driver",
"EventDate": "0001-01-01T00:00:00",
"EventId": "00000000-0000-0000-0000-000000000000",
}]
}]
Quindi voglio il secondo oggetto di tale array utilizzando il TaskCategory.TaskCategoryId
, è possibile ottenere utilizzando sottolineatura?
inserimento del filtro sarebbe un sostituto per l'utilizzo '_.where' in questo caso. Dovrebbe usare '_.find' piuttosto che' _.filter'. – forivall
@forivall oh, ovviamente ... grazie. Il filtro cercherebbe l'intera raccolta, mentre la ricerca si ferma alla prima partita. Ho aggiornato. – McGarnagle
Grazie ragazzi, il '_.find' ha funzionato perfettamente. Ho davvero bisogno di sedermi con questa libreria e impararla per un weekend. – Neil