сталкивается с проблемой в поиске идентификатора для имени в значении JSON - PullRequest
0 голосов
/ 15 января 2019

Я работаю над проектом Angular, где у меня возникла проблема с сохранением идентификатора имени в переменной

Пример:

[
{ttypeName: Cricket , ttypeUid: 1}
 {ttypeName: Hockey, ttypeUid: 2} , 
{ttypeName: nba, ttypeUid: 3}  , 
{ttypeName: football, ttypeUid:4}  , 
{ttypeName: kabadi, ttypeUid: 5}  ]

у нас есть имя , теперь мы хотим сопоставить MatchId , сохранить его в переменной и использовать его

Примечание: значения JASON не являются статичными, длина и порядок не фиксированы, значения поступают из службы

Я публикую свой код ниже ->

объяснение Я передаю sportstype в функцию, которая содержит ttypeName Я хочу получить ttypeUid

Для этого я пишу код:

this.responsesportstypedata.find(m => m.ttypeName == sportstype ).ttypeUid;

Выход: Но это возвращает неправильный идентификатор, например, он возвращает ttypeUid: 3 для ttypeName: Cricket;

getmatchDetails (спортивный тип) {

           this.rest.getSportstype().then(
                 result => {
                  this.responsesportstypedata = result;


                  this.sportsUid =   this.responsesportstypedata.find(m => m.ttypeName == sportstype ).ttypeUid;


                },
                   err => {
                  this.router.navigate(['ErrorPage']);
                     }
                  );

Ответы [ 2 ]

0 голосов
/ 15 января 2019

должно быть как я понял проблема

const nameToFindBy = '...';
const matchId = this.matches.find(m => m.name === nameToFindBy).MatchId;
0 голосов
/ 15 января 2019

что вам нужно, это array.find ()

let matchElement = results.find(t=>matchId == yourId);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...