Size: a a a

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

2020 May 15

AB

Andrew Baranow in Angular - русскоговорящее сообщество
Привет.
у меня import {FormControlsComponent} from '@shared/modules/form-controls/form-controls/form-controls.component';
где настроить можно этот префикс @shared ?
источник

OS

Oleg Safonov in Angular - русскоговорящее сообщество
Andrew Baranow
Привет.
у меня import {FormControlsComponent} from '@shared/modules/form-controls/form-controls/form-controls.component';
где настроить можно этот префикс @shared ?
tsconfig?
источник

AB

Andrew Baranow in Angular - русскоговорящее сообщество
ок.
у меня так
"compilerOptions": {
   "baseUrl": "./src",
источник

AB

Andrew Baranow in Angular - русскоговорящее сообщество
Спасибо. помогло)
источник

BK

Bogdan Khamitov in Angular - русскоговорящее сообщество
Привет. Есть кусок кода  , он берет данные с сервиса .  Подскажите как можно сделать его не в цикле , а по-нормальному . То есть , чтобы можно было отследить , когда все запросы выполнятся.

for(let i = 0; i < Object.keys(dbData).length; i++){
 this.facebookService.getDataOfAds(dbData[i].token)
 .toPromise()
 .then(response => {
 })
 .catch((err:any) => {
 console.log(err);
 });
}
источник

OS

Oleg Safonov in Angular - русскоговорящее сообщество
Bogdan Khamitov
Привет. Есть кусок кода  , он берет данные с сервиса .  Подскажите как можно сделать его не в цикле , а по-нормальному . То есть , чтобы можно было отследить , когда все запросы выполнятся.

for(let i = 0; i < Object.keys(dbData).length; i++){
 this.facebookService.getDataOfAds(dbData[i].token)
 .toPromise()
 .then(response => {
 })
 .catch((err:any) => {
 console.log(err);
 });
}
можно в forkJoin засунуть массив подписок и подписаться на результат
источник

ЭП

Эрик Поуль in Angular - русскоговорящее сообщество
Bogdan Khamitov
Привет. Есть кусок кода  , он берет данные с сервиса .  Подскажите как можно сделать его не в цикле , а по-нормальному . То есть , чтобы можно было отследить , когда все запросы выполнятся.

for(let i = 0; i < Object.keys(dbData).length; i++){
 this.facebookService.getDataOfAds(dbData[i].token)
 .toPromise()
 .then(response => {
 })
 .catch((err:any) => {
 console.log(err);
 });
}
concatMap, mergeMap
источник

S

Smooth Operator in Angular - русскоговорящее сообщество
Bogdan Khamitov
Привет. Есть кусок кода  , он берет данные с сервиса .  Подскажите как можно сделать его не в цикле , а по-нормальному . То есть , чтобы можно было отследить , когда все запросы выполнятся.

for(let i = 0; i < Object.keys(dbData).length; i++){
 this.facebookService.getDataOfAds(dbData[i].token)
 .toPromise()
 .then(response => {
 })
 .catch((err:any) => {
 console.log(err);
 });
}
forkJoin(Object.keys(dbData).map(key => this.getData(key)))
источник

OS

Oleg Safonov in Angular - русскоговорящее сообщество
Smooth Operator
forkJoin(Object.keys(dbData).map(key => this.getData(key)))
forkJoin(Object.keys(dbData).map(key => this.getData(dbData[key])))
источник

BK

Bogdan Khamitov in Angular - русскоговорящее сообщество
Благодарю всех , работает . А подскажите как правильно в моем случае подписаться на forkJoin ? Чтобы отследить все запросы
источник

S

Sake in Angular - русскоговорящее сообщество
.pipe(map(responses => {
   console.log(responses);
}))
источник

OS

Oleg Safonov in Angular - русскоговорящее сообщество
Bogdan Khamitov
Благодарю всех , работает . А подскажите как правильно в моем случае подписаться на forkJoin ? Чтобы отследить все запросы
forkjoin отработает один раз когда все завершатся
источник

BK

Bogdan Khamitov in Angular - русскоговорящее сообщество
Прочитал про forkjoin(скрин) . У меня может быть ошибка в одном из запросов . Подскажите как можно это решить , или чем заменить forkjoin?
источник

OS

Oleg Safonov in Angular - русскоговорящее сообщество
Bogdan Khamitov
Прочитал про forkjoin(скрин) . У меня может быть ошибка в одном из запросов . Подскажите как можно это решить , или чем заменить forkjoin?
а что нужно? чтоб ошибочные запросы игнорились?
источник

BK

Bogdan Khamitov in Angular - русскоговорящее сообщество
Oleg Safonov
а что нужно? чтоб ошибочные запросы игнорились?
Ошибочные тоже нужны запросы
источник

BK

Bogdan Khamitov in Angular - русскоговорящее сообщество
чтобы обработать и их
источник

OS

Oleg Safonov in Angular - русскоговорящее сообщество
Bogdan Khamitov
Ошибочные тоже нужны запросы
forkJoin(Object.keys(dbData)
   .map(key => this
       .getData(dbData[key])
       .pipe(
           catchError(error => of('something goes wrong'))
       )
)

не уверен что скобки правильно выставил, но примерно так
источник

BK

Bogdan Khamitov in Angular - русскоговорящее сообщество
Oleg Safonov
forkJoin(Object.keys(dbData)
   .map(key => this
       .getData(dbData[key])
       .pipe(
           catchError(error => of('something goes wrong'))
       )
)

не уверен что скобки правильно выставил, но примерно так
все равно выдает ошибку ,когда .subcsribe делаю

                            forkJoin(Object.keys(dbData)
                                    .map((key) => {
                                      this.facebookService.getDataOfAds(dbData[key].token)
                                      .pipe(catchError(error => of('something goes wrong')))
                                     
                                    })).subscribe(
                                       returnesponse => {
                                           console.log('success',returnesponse);
                                       },
                                       error => {
                                           console.log('error',error);
                                           
                                       });
источник

OS

Oleg Safonov in Angular - русскоговорящее сообщество
GetDataOfAds что возвращает? Это ошибка что где то вместо observable что то другое отдали. Хоть один запрос ушёл?
источник

BK

Bogdan Khamitov in Angular - русскоговорящее сообщество
Oleg Safonov
GetDataOfAds что возвращает? Это ошибка что где то вместо observable что то другое отдали. Хоть один запрос ушёл?
let url = "https://graph.facebook.com/v6.0/me/adaccounts";
      return this._http.get(url+token);

вот такое GetDataOfAds возвращает . Запросы все уходят
источник