Добавил:
выбрасываю тут свой мусор, надеюсь, что он кому-то может пригодится... Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ekzamen_WEB.docx
Скачиваний:
30
Добавлен:
03.12.2023
Размер:
391.51 Кб
Скачать

Привязка к сеттеру

Кроме привязки к свойству мы можем установить привязку к сеттеру дочернего компонента. (Подробнее про сеттеры и вообще про модификаторы доступа можно посмотреть здесь). Это может быть необходимо, когда в дочернем компоненте надо осуществлять проверку или даже модификацию значения, получаемого от главного компонента.

Сеттеры Сеттеры, методы которые инкапсулируют делают публичными наши поля объекта. По сути являются самой главной проблемой такого процедурного подхода — вся логика снаружи, отсутствие контроля за целостностью данных и логики.

Билет 11

Какие существуют способы вызова одного компонента в другом?

Для передачи данных из одного Angular компонента в другой существует несколько способов:

1) @Input() свойства;

2) @Output() свойства;

3) @ViewChild() свойства;

4) Сервис.

Декоратор @Input() позволяет передавать значения дочерним компонентам, но только на один уровень иерархии.

С помощью @Output() имитируют возникновение события и передают данные родительскому компоненту.

Использование @ViewChild() в родительском Angular component позволяет получить все свойства указанного дочернего компонента.

Еще один способ передавать данные между компонентами - использование сервисов. Сервис - одна из сущностей Angular, которая реализует паттерн проектирования Singleton и служит хранилищем данных. Другое частое его использование - хранение методов, осуществляющих HTTP запросы к серверу.

Билет 12

Опишите все этапы жизненного цикла компонента. Что такое компонент?

К аждый компонент имеет свой жизненный цикл, в процессе которого вызываются ряд описывающих текущий этап методов:

  • OnChanges - устанавливаются или изменяются значения входных свойств класса компонента;

  • OnInit - устанавливаются "обычные" свойства; вызывается единожды вслед за первым вызовом OnChanges();

  • DoCheck - происходит изменения свойства или вызывается какое-либо событие;

  • AfterContentInit - в шаблон включается контент, заключенный между тегами компонента;

  • AfterContentChecked - аналогичен DoCheck(), только используется для контента, заключенного между тегами компонента;

  • AfterViewInit - инициализируются компоненты, которые входят в шаблон текущего компонента;

  • AfterViewChecked - аналогичен DoCheck(), только используется для дочерних компонентов;

  • OnDestroy - компонент "умирает", т.е. удаляется из DOM-дерева

Более подробное описание некоторых методов!

Метод OnChanges() вызывается перед методом ngOnInit() и при изменении свойств в привязке. С помощью параметра SimpleChanges в методе можно получить текущее и предыдущее значение измененного свойства. Метод OnInit() применяется для какой-то комплексной инициализации компонента. (Можно выполнить загрузку данных с сервера или из других источников данных) Метод OnDestroy() вызывается перед удалением компонента. И в этом методе можно освобождать те используемые ресурсы, которые не удаляются автоматически сборщиком мусора. Здесь также можно удалять подписку на какие-то события элементов DOM, останавливать таймеры и т.д.

Компонент (Angular component) - обособленная часть функционала со своей логикой, HTML-шаблоном и CSS-стилями.

Класс становится Angular компонентом, если его объявлению предшествует декоратор @Component() с объектом конфигурации.

Соседние файлы в предмете Web технологии