Доступ к конкретному объекту из массива объектов через файл JSON в угловых 6 - PullRequest
0 голосов
/ 09 сентября 2018

У меня в папке активов есть объект JSON, который я читаю, как показано ниже

data.json

[ 
{
 "modName":"deployment",
 "year":"1992",
  "description":"basic deployment"
},

{
 "modName":"Integration",
  "year":"1995",
  "description":"popular integration"
}
]

В моем файле dataService.ts мой читающий объект JSON

getData(){
 return this.http.get('assests/data.json');
}

getDataInfo{
 return this.getData().subscribe(data=>{
 if(data!==undefined)
  for(let i in data){
   if(data[i].modName=='deployment'){
     return data[i];
  }
  }
 })
}

Я обращаюсь к этому объекту в моем основном компоненте let data = this.dataService.getDataInfo ()

это дает мне подписчика, хотя я хочу определенный объект данных. Как я могу получить его?

1 Ответ

0 голосов
/ 09 сентября 2018

getData отправляется в службу, getDataInfo входит в компонент, а затем в компоненте вы можете создать переменную myDataInfo, и просто в строке, где вы возвращаете данные, сделайте это

this.myDataInfo = data[i]

OR

То же, что и выше, с методом обслуживания и компонента, но вы можете сохранить свои данные в некоторой переменной, например. this.myJsonData

и тогда вы можете сделать что-то вроде этого

get myDataInfo() {
    return this.myJsonData.filter((item) => item.modName=='deployment')[0]
}

и вы просто можете легко использовать этот объект в своем шаблоне.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...