TS. Event bus
Создаётся providedIn: 'root'
сервис событий. Затем отправляются события на шину, и если какой-либо слушатель подписан на эти события, он получает уведомления.
Создаётся providedIn: 'root'
сервис событий. Затем отправляются события на шину, и если какой-либо слушатель подписан на эти события, он получает уведомления.
Рассмотрены библиотеки для соединения DOM элементов стрелками. В результате исследования выбор остановился на leader-line
const { password: _, ...result } = {
id: 7,
name: 'tyapk',
password: '12345',
}
Использование сервиса для окружения вместо прямой ссылки на environment.ts
Builder (cтроитель) - порождающий шаблон программирования. Применяется для создания сложных объектов при помощи цепочки методов someBuilder->setValueA(1)->setValueB(2)->build()
// Jest
const serviceMock = {
methods: jest.fn(),
you: jest.fn(),
want: jest.fn(),
to: jest.fn(),
mock: jest.fn()
};
Общий сценарий внедрения библиотек в компоненты через DI
Добавление сторонних скриптов в Angular по запросу. Как известно, добавить скрипт через шаблон невозможно. Представлено решение как это сделать программно.
const link = document.createElement('link');
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = 'https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css';
link.integrity = 'sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO'; // необязательно
link.crossOrigin = 'anonymous'; // необязательно
document.head.appendChild(link);
const script = document.createElement('script');
script.src = 'https://code.jquery.com/jquery-3.3.1.slim.min.js';
script.integrity = 'sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo'; // необязательно
s...