一个可观察的
Entity 实例集合,其中每个实体都有一个唯一的 ID。
| Name | Type | Description |
|---|---|---|
owner |
DataSource | CompositeEntityCollection | optional 创建此集合的数据源(或复合实体集合)。 |
Members
readonly collectionChanged : Event.<EntityCollection.CollectionChangedEventCallback>
获取添加或移除实体时触发的事件。
生成的事件是
EntityCollection.CollectionChangedEventCallback。
获取此集合的全球唯一标识符。
readonly owner : DataSource|CompositeEntityCollection
获取此实体集合的所有者,即创建它的数据源或复合实体集合。
获取此实体集合是否应显示。
当为 true 时,仅当每个实体的 show 属性也为 true 时才显示。
readonly values : Array.<Entity>
获取集合中的 Entity 实例数组。
该数组不应被直接修改。
Methods
add(entity) → Entity
将实体添加到集合中。
| Name | Type | Description |
|---|---|---|
entity |
Entity | Entity.ConstructorOptions | 要添加的实体。 |
Returns:
已添加的实体。
Throws:
-
DeveloperError : 具有
的实体已经存在于此集合中。
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 在集合中不存在则返回 undefined。
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#suspendEvents 调用,
可以安全地多次调用。
Throws:
-
DeveloperError : 在调用 suspendEvents 之前无法调用 resumeEvents。
防止
EntityCollection#collectionChanged 事件被触发,
直到调用 EntityCollection#resumeEvents,此时将触发一个
单一事件,涵盖所有挂起的操作。这允许高效地添加和移除多个项目。
只要有相应的 EntityCollection#resumeEvents 调用,
此函数可以安全地多次调用。
Type Definitions
EntityCollection#collectionChanged 生成的事件的签名。
| Name | Type | Description |
|---|---|---|
collection |
EntityCollection | 触发事件的集合。 |
added |
Array.<Entity> |
已添加到集合中的 Entity 实例数组。 |
removed |
Array.<Entity> |
已从集合中移除的 Entity 实例数组。 |
changed |
Array.<Entity> |
已修改的 Entity 实例数组。 |
