Renderer2
Расширьте этот базовый класс, чтобы реализовать пользовательский рендеринг. По умолчанию Angular отображает шаблон в DOM. Пользовательский рендеринг можно использовать для перехвата вызовов рендеринга или для отображения в объект, отличный от DOM.
API
abstract class Renderer2 {
abstract readonly data: { [key: string]: any; };
abstract destroy(): void;
abstract createElement(name: string, namespace?: string | null | undefined): any;
abstract createComment(value: string): any;
abstract createText(value: string): any;
destroyNode: ((node: any) => void) | null;
abstract appendChild(parent: any, newChild: any): void;
abstract insertBefore(parent: any, newChild: any, refChild: any, isMove?: boolean | undefined): void;
abstract removeChild(parent: any, oldChild: any, isHostElement?: boolean | undefined, requireSynchronousElementRemoval?: boolean | undefined): void;
abstract selectRootElement(selectorOrNode: any, preserveContent?: boolean | undefined): any;
abstract parentNode(node: any): any;
abstract nextSibling(node: any): any;
abstract setAttribute(el: any, name: string, value: string, namespace?: string | null | undefined): void;
abstract removeAttribute(el: any, name: string, namespace?: string | null | undefined): void;
abstract addClass(el: any, name: string): void;
abstract removeClass(el: any, name: string): void;
abstract setStyle(el: any, style: string, value: any, flags?: RendererStyleFlags2 | undefined): void;
abstract removeStyle(el: any, style: string, flags?: RendererStyleFlags2 | undefined): void;
abstract setProperty(el: any, name: string, value: any): void;
abstract setValue(node: any, value: string): void;
abstract listen(target: any, eventName: string, callback: (event: any) => boolean | void, options?: ListenerOptions | undefined): () => void;
}
data
{ [key: string]: any; }Используется для хранения произвольных данных, определенных разработчиком, в экземпляре рендерера в виде объекта с парами «ключ — значение». Это полезно для рендереров, делегирующих задачи другим рендерерам.
destroy
voidРеализуйте этот обратный вызов, чтобы уничтожить рендерер или хост-элемент.
void
createElement
anyРеализуйте этот обратный вызов, чтобы создать экземпляр хост-элемента.
stringИдентифицирующее имя нового элемента, уникальное в пределах пространства имен.
string | null | undefinedПространство имен нового элемента.
anyНовый элемент.
createComment
anyРеализуйте этот обратный вызов, чтобы добавить комментарий в DOM хост-элемента.
stringТекст комментария.
anyИзмененный элемент.
createText
anyРеализуйте этот обратный вызов, чтобы добавить текст в DOM хост-элемента.
stringТекстовая строка.
anyИзмененный элемент.
destroyNode
((node: any) => void) | nullЕсли значение равно null или undefined, механизм представлений не будет вызывать этот метод. Это используется для оптимизации производительности в рабочем режиме.
appendChild
voidДобавляет дочерний узел к указанному родительскому узлу в DOM хост-элемента.
anyРодительский узел.
anyНовый дочерний узел.
void
insertBefore
voidРеализуйте этот обратный вызов, чтобы вставить дочерний узел в указанную позицию родительского узла в DOM хост-элемента.
anyРодительский узел.
anyНовые дочерние узлы.
anyСуществующий дочерний узел, перед которым вставляется newChild.
boolean | undefinedНеобязательный аргумент, указывающий, является ли текущий insertBefore результатом перемещения. Анимация использует эту информацию для запуска анимаций перемещения. Ранее механизм анимации всегда считал, что любой insertBefore является перемещением. Это не совсем верно, поскольку при использовании i18n во время выполнения insertBefore может быть вызван в результате i18n, и это не должно запускать анимацию перемещения.
void
removeChild
voidРеализуйте этот обратный вызов, чтобы удалить дочерний узел из DOM хост-элемента.
anyРодительский узел.
anyДочерний узел, который нужно удалить.
boolean | undefinedНеобязательный сигнал рендереру о том, является ли этот элемент хост-элементом
boolean | undefinedНеобязательный сигнал рендереру о том, требуется ли синхронное удаление этого элемента
void
selectRootElement
anyРеализуйте этот обратный вызов, чтобы подготовить элемент к инициализации в качестве корневого элемента и вернуть экземпляр элемента.
anyЭлемент DOM.
boolean | undefinedСледует ли сохранять содержимое корневого элемента или очищать его при инициализации (поведение по умолчанию). Используйте вместе с ViewEncapsulation.ShadowDom, чтобы обеспечить простую проекцию содержимого с помощью собственных элементов <slot>.
anyКорневой элемент.
parentNode
anyРеализуйте этот обратный вызов, чтобы получить родительский узел заданного узла в DOM хост-элемента.
anyДочерний узел, который нужно проверить.
anyРодительский узел или null, если родителя нет. Проверка выполняется синхронно, поэтому вызывающий код не может полагаться на проверку значения null.
nextSibling
anyРеализуйте этот обратный вызов, чтобы получить следующий соседний узел заданного узла в DOM хост-элемента.
any
anyСоседний узел или null, если соседнего узла нет. Проверка выполняется синхронно, поэтому вызывающий код не может полагаться на проверку значения null.
setAttribute
voidРеализуйте этот обратный вызов, чтобы задать значение атрибута элемента в DOM.
anyЭлемент.
stringИмя атрибута.
stringНовое значение.
string | null | undefinedПространство имен.
void
removeAttribute
voidРеализуйте этот обратный вызов, чтобы удалить атрибут элемента из DOM.
anyЭлемент.
stringИмя атрибута.
string | null | undefinedПространство имен.
void
addClass
voidРеализуйте этот обратный вызов, чтобы добавить класс элементу в DOM.
anyЭлемент.
stringИмя класса.
void
removeClass
voidРеализуйте этот обратный вызов, чтобы удалить класс элемента из DOM.
anyЭлемент.
stringИмя класса.
void
setStyle
voidРеализуйте этот обратный вызов, чтобы задать стиль CSS для элемента в DOM.
anyЭлемент.
stringИмя стиля.
anyНовое значение.
RendererStyleFlags2 | undefinedФлаги для вариантов стиля. По умолчанию флаги не установлены.
void
removeStyle
voidРеализуйте этот обратный вызов, чтобы удалить значение стиля CSS элемента в DOM.
anyЭлемент.
stringИмя стиля.
RendererStyleFlags2 | undefinedФлаги вариантов стиля, которые нужно удалить, если они установлены. ???
void
setProperty
voidРеализуйте этот обратный вызов, чтобы задать значение свойства элемента в DOM.
anyЭлемент.
stringИмя свойства.
anyНовое значение.
void
setValue
voidРеализуйте этот обратный вызов, чтобы задать значение узла в хост-элементе.
anyУзел.
stringНовое значение.
void
listen
() => voidРеализуйте этот обратный вызов, чтобы добавить прослушиватель событий.
anyКонтекст, в котором нужно прослушивать события. Это может быть всё окно или документ, тело документа либо определенный элемент DOM.
stringСобытие, которое нужно прослушивать.
(event: any) => boolean | voidФункция-обработчик, вызываемая при возникновении события.
() => voidФункция «unlisten» для удаления этого обработчика.
Описание
Расширьте этот базовый класс, чтобы реализовать пользовательский рендеринг. По умолчанию Angular отображает шаблон в DOM. Пользовательский рендеринг можно использовать для перехвата вызовов рендеринга или для отображения в объект, отличный от DOM.
Обратите внимание: использование `Renderer2` для доступа к элементам DOM не обеспечивает дополнительной безопасности и эквивалентно Security vulnerabilities.
Создайте собственный рендерер с помощью RendererFactory2.
Используйте собственный рендерер, чтобы обойти шаблонизацию Angular и вносить пользовательские изменения в интерфейс, которые нельзя выразить декларативно. Например, если необходимо задать свойство или атрибут, имя которого неизвестно статически, используйте метод setProperty() или setAttribute().
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/Renderer2