Skip to content

NovaNode

Контракт node, options, events, dirty и render methods.

Практическая схема

  • Документация: NovaCore.
  • Раздел: Справочник.
  • Тема страницы: NovaNode.
  • Переключатель TypeScript / DSL находится в панели навигации; вкладка Код в примере показывает файлы выбранного подхода.
node · @endge/nova

NovaNode

Базовый runtime-объект scene graph: transform, lifecycle, render, dirty flags и input handlers.

class NovaNode<E extends EventList> extends RaphNode<NovaNodeProperties>
Properties
ПолеТипОписание
x, ynumberЛокальная позиция node.
width, heightnumberЛогический размер и fallback bounds.
scaleX, scaleY, rotationnumberTransform-свойства matrix phase.
active, visiblebooleanВычисляются с учетом parent state и управляют update/render/input.
interactivebooleanПозволяет node участвовать в input registry.
Methods
ПолеТипОписание
options(opts)thisМассово обновляет свойства node, включая zIndex через weight.
dirty(flags)voidПомечает update/matrix/render phases dirty.
render()voidПереопределяется в наследниках для отрисовки schema.
setLocalRenderBounds(bounds)thisЗадает точные bounds для culling и hit-test.
toLocal(gx, gy)[number, number]Переводит координаты canvas в local coordinates node.
Events
ПолеТипОписание
on(type, handler)voidПодписка на bubble phase.
onCapture(type, handler)voidПодписка на capture phase.
capturePointer(event)voidУдерживает pointer на node во время drag.
focus(event, scope)voidСтавит focus в default или named scope.
select(options, event)voidДобавляет node в selection scope.

Как применять

Используйте страницу как короткую рабочую заметку: сначала определите границу ответственности, затем откройте пример и сравните TypeScript-реализацию с DSL-описанием. Runtime-код остается в Nova-слое, а Vue отвечает только за mount, layout shell и cleanup.