由
Entity
个实例组成的可观察集合,其中每个实体都有一个唯一的id。Name | Type | Description |
---|---|---|
owner |
DataSource | CompositeEntityCollection | optional 创建此集合的数据源(或复合实体集合)。 |
Members
readonly collectionChanged : Event
获取在从集合中添加或删除实体时激发的事件。
生成的事件是
EntityCollection.collectionChangedEventCallback
。获取此集合的全局唯一标识符。
readonly owner : DataSource|CompositeEntityCollection
获取此实体集合的所有者,即创建它的数据源或复合实体集合。
获取此实体集合是否应
显示。如果为true,则仅在以下情况下显示每个实体:
它自己的表演属性也是真实的。
readonly values : Array.<Entity>
获取集合中实体实例的数组。
不应直接修改此数组。
Methods
事件的签名由
EntityCollection#collectionChanged
生成。Name | Type | Description |
---|---|---|
collection |
EntityCollection | 触发事件的集合。 |
added |
Array.<Entity> | 已添加到集合中的Entity 个实例的数组。 |
removed |
Array.<Entity> | 已从集合中移除的Entity 个实例的数组。 |
changed |
Array.<Entity> | 已修改的Entity 个实例的数组。 |
add(entity) → Entity
向集合中添加实体。
Name | Type | Description |
---|---|---|
entity |
Entity | Entity.ConstructorOptions | 要添加的实体。 |
Returns:
添加的实体。
Throws:
-
DeveloperError :拥有
already exists in this collection. 的实体
computeAvailability() → TimeInterval
计算集合中实体的最大可用性。
如果集合包含无限可用数据和非无限数据的混合,
它只返回与非无限数据相关的间隔。如果全部
数据是无限的,将返回无限的间隔。
Returns:
集合中实体的可用性。
如果提供的实体在此集合中,则返回true,否则返回false。
Name | Type | Description |
---|---|---|
entity |
Entity | 实体。 |
Returns:
如果提供的实体在此集合中,则为true,否则为false。
getById(id) → Entity|undefined
获取具有指定id的实体。
Name | Type | Description |
---|---|---|
id |
String | 要检索的实体的id。 |
Returns:
具有提供的id或未定义的实体(如果集合中不存在该id)。
getOrCreateEntity(id) → Entity
获取具有指定id的实体,或者创建该实体并将其添加到集合中(如果该实体不存在)。
Name | Type | Description |
---|---|---|
id |
String | 要检索或创建的实体的id。 |
Returns:
新对象或现有对象。
从集合中移除实体。
Name | Type | Description |
---|---|---|
entity |
Entity | 要删除的实体。 |
Returns:
如果项已移除,则为true;如果集合中不存在该项,则为false。
从集合中移除所有实体。
从集合中移除具有所提供id的实体。
Name | Type | Description |
---|---|---|
id |
String | 要删除的实体的id。 |
Returns:
如果项已移除,则为true;如果集合中不存在具有所提供id的项,则为false。
继续立即引发
EntityCollection#collectionChanged
个事件
添加或删除项目时。暂停事件时所做的任何修改
将在调用此函数时作为单个事件触发。
这个函数是引用计数的,可以安全地调用多次
是EntityCollection#resumeEvents
的对应电话。Throws:
-
DeveloperError :无法在suspendEvents之前调用resumeEvents。
防止引发
EntityCollection#collectionChanged
事件
直到拨打EntityCollection#resumeEvents
,在
点将引发一个覆盖所有挂起操作的事件。
这样可以有效地添加和删除许多项。
这个函数可以安全地调用多次,只要
是对EntityCollection#resumeEvents
的相应呼叫。