Spec-Zone.ru › Angular

ComponentRef

Представляет компонент, созданный с помощью ComponentFactory. Предоставляет доступ к экземпляру компонента и связанным объектам, а также позволяет уничтожить экземпляр.

Программное создание компонентов

API

abstract class ComponentRef<C> {
  abstract setInput(name: string, value: unknown): void;
  abstract readonly location: ElementRef<any>;
  abstract readonly injector: Injector;
  abstract readonly instance: C;
  abstract readonly hostView: ViewRef;
  abstract readonly changeDetectorRef: ChangeDetectorRef;
  abstract readonly componentType: Type<any>;
  abstract destroy(): void;
  abstract onDestroy(callback: Function): void;
}

setInput

void

Обновляет указанное входное свойство, присваивая ему новое значение. При использовании этого метода компонент будет корректно помечен для проверки, если для него используется стратегия обнаружения изменений OnPush. Кроме того, при обнаружении изменений в динамически созданном компоненте будет вызван хук жизненного цикла OnChanges.

@paramnamestring

Имя входного свойства.

@paramvalueunknown

Новое значение входного свойства.

@returnsvoid

location

ElementRef<any>

Элемент-хост или элемент-якорь этого экземпляра компонента.

injector

Injector

Инжектор зависимостей для этого экземпляра компонента.

instance

C

Этот экземпляр компонента.

hostView

ViewRef

Представление-хост, определенное шаблоном для этого экземпляра компонента.

changeDetectorRef

ChangeDetectorRef

Детектор изменений для этого экземпляра компонента.

componentType

Type<any>

Тип этого компонента (созданного классом ComponentFactory).

destroy

void

Уничтожает экземпляр компонента и все связанные с ним структуры данных.

@returnsvoid

onDestroy

void

Хук жизненного цикла, предоставляющий дополнительные возможности для очистки, определенные разработчиком.

@paramcallbackFunction

Функция-обработчик, очищающая данные, связанные с этим компонентом и определенные разработчиком. Вызывается при вызове метода destroy().

@returnsvoid

Super-powered by Google ©2010–2025.
Code licensed under an MIT-style License. Documentation licensed under CC BY 4.0.
https://angular.dev/api/core/ComponentRef

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API