Angular. HTTP long polling
httpRequest.pipe(
repeat(),
takeUntil(stop$)
).subscribe(x => console.log(x));
httpRequest.pipe(
repeat(),
takeUntil(stop$)
).subscribe(x => console.log(x));
Создаётся providedIn: 'root'
сервис событий. Затем отправляются события на шину, и если какой-либо слушатель подписан на эти события, он получает уведомления.
Использование сервиса для окружения вместо прямой ссылки на environment.ts
// Jest
const serviceMock = {
methods: jest.fn(),
you: jest.fn(),
want: jest.fn(),
to: jest.fn(),
mock: jest.fn()
};
Общий сценарий внедрения библиотек в компоненты через DI
Добавление сторонних скриптов в Angular по запросу. Как известно, добавить скрипт через шаблон невозможно. Представлено решение как это сделать программно.
О том как в шаблоне ng-template получить из директивы значение и как в директиву закинуть несколько Input()
Аналогично @Input() позволяет получить значение атрибута с хоста компонента/директивы, но не отслеживает дальнейшее изменение атрибута.
<a [routerLink]="myVar ? '/home' : null" routerLinkActive="is-active">Home</a>
or
<a [routerLink]="myVar ? ['/home'] : []">Home</a>