Size: a a a

Angular - русскоговорящее сообщество

2021 March 05

DA

Dariga Abdikarimova in Angular - русскоговорящее сообщество
Roman Yazvinsky
Да, должно работать
у меня в другой компоненте используется этот сервис, но не работает, где может быть ошибка? (второе фото из сервиса)
источник

DA

Dariga Abdikarimova in Angular - русскоговорящее сообщество
Roman Yazvinsky
Да, должно работать
источник

VM

Vlad Martyshev in Angular - русскоговорящее сообщество
на fetchPhotos надо подписатся
источник

RY

Roman Yazvinsky in Angular - русскоговорящее сообщество
Dariga Abdikarimova
у меня в другой компоненте используется этот сервис, но не работает, где может быть ошибка? (второе фото из сервиса)
Почему вы на fetch не подписываетесь, а на getPhotos подписываетесь? Отчего такая дискриминация? :)
источник

VM

Vlad Martyshev in Angular - русскоговорящее сообщество
вообще тут чучуть не правильная реализация
источник

DA

Dariga Abdikarimova in Angular - русскоговорящее сообщество
боже,да! Спасибо огромное
источник

VM

Vlad Martyshev in Angular - русскоговорящее сообщество
fetchPhotos должен пушить значение в сабджект
источник

VM

Vlad Martyshev in Angular - русскоговорящее сообщество
а потом в getPhotos надо мерджить этот сабжект и получение данных из апи
источник

VM

Vlad Martyshev in Angular - русскоговорящее сообщество
получится что нужна только одна подписка
источник

DA

Dariga Abdikarimova in Angular - русскоговорящее сообщество
getPhotos  в сервисе убрать?
источник

VM

Vlad Martyshev in Angular - русскоговорящее сообщество
нет
источник

VM

Vlad Martyshev in Angular - русскоговорящее сообщество
источник

VM

Vlad Martyshev in Angular - русскоговорящее сообщество
Вот статья, поможет понять глубже
источник

DA

Dariga Abdikarimova in Angular - русскоговорящее сообщество
спасибо
источник

СК

Саша Корбут... in Angular - русскоговорящее сообщество
у кого-нибудь возникали проблемы с position fixed когда нажимаешь назад в браузере?
источник

AK

Alex Kulagin 🏡 in Angular - русскоговорящее сообщество
Dariga Abdikarimova
Правильно ли я получаю массив из такого сайта https://jsonplaceholder.typicode.com/albums/2/photos ?
(вместо 2 можно запросить другие числа,у Photo такие же поля как на сайте)
Вообще такие штуки типа

tap(data => this.data=data)

Лучше не использовать
источник

AK

Alex Kulagin 🏡 in Angular - русскоговорящее сообщество
private data = new ReplaySubject(1);

get data$() {
 return this.data
    .asObservavle()
}

fetch() {
 this.http.get(...)
  .subscribe(this.data)
}


Лучше уж как-то так, если использовать кэш. Но не забывайте, что сабжект нужно завершить вовремя
источник

G

Gavr in Angular - русскоговорящее сообщество
Открываем MatDialog и передаем ему объект типа вложенного интерфейса

this.dialog
           .open(ItemComponent, {data: item.contacts}), где item: PersonInterface, а contacts: CommunicationInterface[]

далее, при открытии модального окна, в консоль выводим пришедший объект: [ 0: { phone: '123', email: '123@mail.ru' } ], но при обращении к полю этого объекта (например, this.data.phone) возвращается undefined.
Почему так? Данные объекта просто теряются
источник

И

Илья | 😶 ☮️... in Angular - русскоговорящее сообщество
Gavr
Открываем MatDialog и передаем ему объект типа вложенного интерфейса

this.dialog
           .open(ItemComponent, {data: item.contacts}), где item: PersonInterface, а contacts: CommunicationInterface[]

далее, при открытии модального окна, в консоль выводим пришедший объект: [ 0: { phone: '123', email: '123@mail.ru' } ], но при обращении к полю этого объекта (например, this.data.phone) возвращается undefined.
Почему так? Данные объекта просто теряются
Потому что массив и обращение должно содержать индекс элемента
источник

G

Gavr in Angular - русскоговорящее сообщество
Илья | 😶 ☮️
Потому что массив и обращение должно содержать индекс элемента
спасибо, упустил этот момент
источник