Как получить значение из вложенного объекта Observable Array - PullRequest
0 голосов
/ 11 октября 2019
  • Я безуспешно искал ответ на этот вопрос.

У меня есть наблюдаемый массив, который содержит только одну запись:

Array

Он хранится в self.user ()

POSData.Users.getByEmail(sEmail)
        .then(data => {
        //console.log(data)
        self.user.push(data);
    })

Теперь я просто хочу извлечь несколько значений и присвоить ихсобственные наблюдаемые, НО ... я не могу.

Я пробовал следующее, чтобы получить firstName ...

console.dir(self.user());

    //console.log(self.user()[0].data.firstName());
    //console.log(self.user().firstName());
    //console.log(self.user().data.firstName());
    //console.log(self.user()[0].data.firstName());
    //console.log(self.user().data[1].firstName());


Кто-нибудь знает, как развернуть и добраться доинформацию, которую я хочу?

Спасибо за поиск.

Джон

1 Ответ

3 голосов
/ 11 октября 2019

Вы сохраняете необработанные данные, которые вы получили от вашего сервиса, в ваш массив. Вы должны получить доступ к членам этих данных в этой форме. Свойство firstName не является наблюдаемым, это просто строка в свойстве data, поэтому вы не должны вызывать его, как если бы оно было наблюдаемым. Единственная наблюдаемая в вашем примере, по-видимому, self.user.

На основе вашего скриншота ваши новые данные выглядят примерно так:

{
  data: {
    firstName: 'John',
    lastName: 'Smith'
  },
  message: 'User retrieved successfully',
  status: null
}

Если вы хотите получить имя этого объектав вашем массиве user вы получите к нему доступ следующим образом:

self.user()[0].data.firstName
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...