Classes

Class: Component

组件,系统核心之一。

组件就是wxml的标签上写的那些attribute,比如<xr-element transform="position: 1 1 1" />中,transform就是一个组件,position是它的一个属性。 这些属性可以在schema中被定义,变化时会触发对应的生命周期。 自定义组件最后使用registerComponent,组件的属性可以使用代理规则来简化,比如以上的标签可以简化为<xr-element position="1 1 1" />,详见Element。

Type parameters

Name Description
IData 组件数据的类型,应当和schema中一致,用于TS类型推断。

Hierarchy

Table of contents

Constructors

Events

Properties

Accessors

Methods

Constructors

constructor

• new Component<IData>()

Type parameters

Name
IData

Events

onAdd

▸ onAdd(parent, data): void

所挂载的element被挂载到场景时触发的回调。

Parameters

Name Type
parent Element
data IData

Returns

void

onRelease

▸ onRelease(data): void

从被挂载的element上被移除,或是element被销毁时,触发的回调。 一般用于释放持有的资源。

Parameters

Name Type
data IData

Returns

void

onRemove

▸ onRemove(parent, data): void

所挂载的element从父节点parent被移除时,或者自己从element上被移除时,触发的回调。 一般用于消除功能的运作。 如果一个组件的元素直接被销毁了,那这个组件就不会经历onRemove而是直接进入onRelease。

Parameters

Name Type
parent Element
data IData

Returns

void

onTick

▸ onTick(deltaTime, data): void

渲染每帧触发的回调。

Parameters

Name Type Description
deltaTime number 单位为毫秒(ms)。
data IData -

Returns

void

onUpdate

▸ onUpdate(data, preData): void

数据更新时触发的回调。

Parameters

Name Type
data IData
preData IData

Returns

void

Properties

priority

• Readonly priority: number

自定义组件的更新优先级。


schema

• Readonly schema: IComponentSchema = {}

自定义组件的schema。


EVENTS

▪ Static EVENTS: string[] = []

Accessors

el

• get el(): Element

挂载的元素。

Returns

Element


scene

• get scene(): Scene

当前场景。

Returns

Scene


version

• get version(): number

当前版本,每次有数据更新都会增加,可以用作和其他组件合作的依据。

Returns

number

Methods

getData

▸ getData<T>(key): IData[T]

获取一个当前值。

Type parameters

Name Type
T extends string

Parameters

Name Type
key T

Returns

IData[T]


setData

▸ setData(data): void

不通过xml而是直接设置data,注意值的类型需要和schema中一致。

Parameters

Name Type
data Partial<IData>

Returns

void

setDataOne

▸ setDataOne<T>(key, value): void

设置一个数据。

Type parameters

Name Type
T extends string

Parameters

Name Type
key T
value IData[T]

Returns

void
posted on 2025-01-14 08:18  AtlasLapetos  阅读(42)  评论(0)    收藏  举报