Size: a a a

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

2019 October 20

M

Maks in Angular - русскоговорящее сообщество
Что subscribe работает асинхронно я знаю, но я пытался даже просто вывести эти данные через ngFor и там в массиве пусто, хотя я дебажил и колбэке данные были
источник

IF

Igor Filippov in Angular - русскоговорящее сообщество
Maks
Что subscribe работает асинхронно я знаю, но я пытался даже просто вывести эти данные через ngFor и там в массиве пусто, хотя я дебажил и колбэке данные были
Завери нгФор в нгИф на эти данные например
источник

IF

Igor Filippov in Angular - русскоговорящее сообщество
Или как более чистый вариант, можешь asyncPipe использовать
источник

M

Maks in Angular - русскоговорящее сообщество
Igor Filippov
Завери нгФор в нгИф на эти данные например
Это помогло бы если бы у меня валилась ошибка, а так у меня несмотря на отработку колбэка, данные не переприсваиваются, они хранят значения только в теле колбэка.
источник

IF

Igor Filippov in Angular - русскоговорящее сообщество
Maks
Это помогло бы если бы у меня валилась ошибка, а так у меня несмотря на отработку колбэка, данные не переприсваиваются, они хранят значения только в теле колбэка.
У тебя какая стратегия ченж детекшена?
источник

M

Maks in Angular - русскоговорящее сообщество
this.httpClient.get<T>(this.apiURL + uri).subscribe(onComplete, onError);
в onComplete кладу данные из респонса, и в этом делегате присваиваю их уже куда нужно
источник

M

Maks in Angular - русскоговорящее сообщество
public refreshRooms(rooms: Array<RoomModel>) {
   this.rooms = rooms;
 }
источник

M

Maks in Angular - русскоговорящее сообщество
вот пример onComplete
источник

M

Maks in Angular - русскоговорящее сообщество
Сам OnComplete передаю в функцию делегатом onComplete: (response: T) => void
источник

П

Паша in Angular - русскоговорящее сообщество
А как можно сделать несколько событий на один клик?
источник

M

Maks in Angular - русскоговорящее сообщество
Паша
А как можно сделать несколько событий на один клик?
можно эти события обернуть в одно и вызвать его или попробовать нужные события через ; перечислить, тоже должно сработать поидейно
источник

M

Maks in Angular - русскоговорящее сообщество
Паша
А как можно сделать несколько событий на один клик?
(click)="doSomething();doSomethingElse();"
источник

IF

Igor Filippov in Angular - русскоговорящее сообщество
Maks
public refreshRooms(rooms: Array<RoomModel>) {
   this.rooms = rooms;
 }
В общем можешт еще сделать changeDetectionRef.markForCheck()
источник

IF

Igor Filippov in Angular - русскоговорящее сообщество
Так точно сработает. Я так понял у тебя онпуш стратегия, скорее всего
источник

M

Maks in Angular - русскоговорящее сообщество
Igor Filippov
Так точно сработает. Я так понял у тебя онпуш стратегия, скорее всего
не помогло(
источник

M

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

M

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

M

Maks in Angular - русскоговорящее сообщество
вот пример, функция на вотором скрине вызывается по кнопке, и на момент нажатия первая уже отработала
источник

M

Marry in Angular - русскоговорящее сообщество
Добрый вечер. Подскажите, у меня есть деректора, внутри которой обрабатывает скроллинг на блоке. Как мне в этой дерективе вызвать функцию, которая определена в контроллере и работает с объявленным в контроллере массивом?
источник

IF

Igor Filippov in Angular - русскоговорящее сообщество
Marry
Добрый вечер. Подскажите, у меня есть деректора, внутри которой обрабатывает скроллинг на блоке. Как мне в этой дерективе вызвать функцию, которая определена в контроллере и работает с объявленным в контроллере массивом?
Через Output() можешь
источник