# BaseClass
查阅Cesium API

#### new mars3d.BaseClass(options)
core/BaseClass.js 4

基础类，SDK中几乎所有类的基类，都是继承该基类的。

参数名称 | 类型 | 描述信息
--- | --- | ---
`options` | object | 可选 参数

### 属性值

#### enabledEvent : boolean
core/BaseClass.js 32

设置事件的启用和禁用状态

#### 只读 options : object
core/BaseClass.js 18

当前类的构造参数

### 方法

#### addEventParent(obj) → BaseClass
core/BaseClass.js 303

添加抛出事件到父类，它将接收传播的事件

参数名称 | 类型 | 描述信息
--- | --- | ---
`obj` | object | 父类对象

##### 返回值:

当前对象本身,可以链式调用

#### destroy(noDel) → void
core/BaseClass.js 47

销毁当前对象

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`noDel` | boolean | `false` | 可选 false:会自动delete释放所有属性，true：不delete绑定的变量

##### 返回值:

无

#### fire(type, data, propagate) → BaseClass
core/BaseClass.js 199

触发指定类型的事件。

参数名称 | 类型 | 描述信息
--- | --- | ---
`type` | EventType | string | 事件类型
`data` | object | 可选 传输的数据或对象，可在事件回调方法中event对象中获取进行使用
`propagate` | BaseClass | 可选 将事件传播给父类 (用addEventParent设置)

##### 返回值:

当前对象本身,可以链式调用

#### hasEventParent(obj) → boolean
core/BaseClass.js 330

是否绑定了抛出事件到指定父类

参数名称 | 类型 | 描述信息
--- | --- | ---
`obj` | object | 父类对象

##### 返回值:

是否绑定了抛出事件

#### listens(type, propagate) → boolean
core/BaseClass.js 253

是否有绑定指定的事件

参数名称 | 类型 | 描述信息
--- | --- | ---
`type` | EventType | string | 事件类型
`propagate` | BaseClass | 可选 是否判断指定的父类 (用addEventParent设置的)

##### 返回值:

是否存在

#### off(types, fn, context) → BaseClass
core/BaseClass.js 96

解除绑定指定类型事件监听器

参数名称 | 类型 | 描述信息
--- | --- | ---
`types` | string | EventType | Array.<string> | Array.<EventType> | 可选 事件类型，tip:多个事件也可以数组或空格间隔的字符串 , 传入空值时解绑所有事件
`fn` | function | 可选 绑定的监听器回调方法,未传值时解绑所有指定类型对应事件，特殊说明：map.on监听的Cesium相关原生事件时必须传入该参数
`context` | object | 可选 侦听器的上下文(this关键字将指向的对象)。

##### 返回值:

当前对象本身,可以链式调用

#### on(types, fn, context) → BaseClass
core/BaseClass.js 66

绑定指定类型事件监听器, 支持在监听中调用 event.stopPropagation(); 阻止事件冒泡

参数名称 | 类型 | 描述信息
--- | --- | ---
`types` | string | EventType | Array.<string> | Array.<EventType> | 事件类型，tip:多个事件也可以数组或空格间隔的字符串
`fn` | function | 绑定的监听器回调方法
`context` | object | 可选 侦听器的上下文(this关键字将指向的对象)。

##### 返回值:

当前对象本身,可以链式调用

#### once(types, fn, context) → BaseClass
core/BaseClass.js 280

绑定一次性执行的指定类型事件监听器 与on类似，监听器只会被触发一次，然后被删除。

参数名称 | 类型 | 描述信息
--- | --- | ---
`types` | EventType | string | Array.<EventType> | 事件类型
`fn` | function | 绑定的监听器回调方法
`context` | object | 可选 侦听器的上下文(this关键字将指向的对象)。

##### 返回值:

当前对象本身,可以链式调用

#### removeEventParent(obj) → BaseClass
core/BaseClass.js 316

移除抛出事件到父类

参数名称 | 类型 | 描述信息
--- | --- | ---
`obj` | object | 父类对象

##### 返回值:

当前对象本身,可以链式调用