Доступ к данным из массива типа class array Angular 7 - PullRequest
1 голос
/ 09 июля 2020

введите описание изображения здесь введите описание изображения здесь

Я объявил массив типа subject [] и получаю информацию от api и нажимаю темы в массив Arr. Моя консоль похожа на прикрепленные изображения. Я хочу получить доступ к темам, используя angular, и когда я пытаюсь использовать this.subject [0], он возвращает undefined.

, поэтому это не массив внутри массива, мне нужна помощь в доступе к этим данным, я буду используя его для динамического создания меток на графике из диаграммы js.

Arr: Subject [] = new Array();
 
loadSubjects() {
  this.ss.getSubjects().subscribe(( subject: Subject[]) => {
    this.subject = subject;
    for (let i = 0; i < this.subject.length; i++) {
        this.subjArray.push(this.subject[i]['name']);
    }
  });
}

1 Ответ

0 голосов
/ 09 июля 2020

Это можно сделать с помощью функции карты

Щелкните здесь для решения Plunker

Также добавьте фрагмент кода ниже:

this.list1 = [
  {Name: "abc", Capacity: "150", Series: "20", Make: "150", Model: "150", TowerHeight: "151"},
  {Name: "def", Capacity: "250", Series: "250", Make: "250", Model: "252", TowerHeight: "250"},
  {Name: "ghi", Capacity: "151", Series: "21", Make: "151", Model: "151", TowerHeight: "152"}
  ];


this.list2 = this.list1.map(item => { return item.Name});

В вашем случае, я думаю, это будет похоже на

this.subjArray = this.subject.map(item => { return item.name});

ВЫХОД

Список 1:

[
    {
        "Name": "abc",
        "Capacity": "150",
        "Series": "20",
        "Make": "150",
        "Model": "150",
        "TowerHeight": "151"
    },
    {
        "Name": "def",
        "Capacity": "250",
        "Series": "250",
        "Make": "250",
        "Model": "252",
        "TowerHeight": "250"
    },
    {
        "Name": "ghi",
        "Capacity": "151",
        "Series": "21",
        "Make": "151",
        "Model": "151",
        "TowerHeight": "152"
    }
]

Список 2:

[ "abc", "def", "ghi" ]

Это также можно сделать с l oop. Но карта будет проще в angular для сценария данных диаграммы ios, где нам нужно получить одно значение свойства в массиве

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