Class: Handler

olview~ Handler


<abstract> new Handler(options)

控制器是控制用户与地图交互相关的操作,有各种控制器,比如常用的选择控制器,绘制长方形框控制器,绘制点控制器,绘制线控制器,绘制面控制器等。 用户也可以继承Handler对象,实现自定义的控制器。
Parameters:
Name Type Description
options Object
Properties
Name Type Argument Default Description
hitTolerance Number <optional>
10 处理器在处理地图交互时的像素容差

Extends

Methods


getView()

获取当前控制器的视图对象

getHitTolerance()

获取像素容差

setHitTolerance(value)

设置像素容差
Parameters:
Name Type Description
value Number 像素容差

initialize()

当控制器被添加到视图中时,会调用此方法进行初始化相关的操作。 用户自定义控制器,可以重写initialize方法,处理初始化相关操作。

<abstract> handleEvent(mapBrowserEvent)

处理地图事件,自定义控制器必须重写此方法,返回值会影响视图中其他控制器和地图默认操作是否生效。 视图中可以有多个控制器,按照添加的先后顺序,地图事件会从后向前进行传递,如果当前控制器返回false或者默认不返回值,则会终止事件继续向前传递, 那么在此控制器前面的控制器或者地图默认操作会接收不到地图事件而失效,返回true会继续传递地图事件。
Parameters:
Name Type Description
mapBrowserEvent ol.MapBrowserEvent openlayers的地图事件
Returns:
是否继续响应事件,返回false或者默认不返回值会终止事件继续向前传递.
Type
boolean

destroy()

销毁控制器方法,不能由用户直接调用,如果要想销毁当前控制器,请调用视图的removeHandler方法 当控制器从视图中移除时,会调用此方法进行资源销毁相关的操作。 用户自定义控制器,可以重写destroy方法,处理资源销毁的相关操作。
Overrides:

dispatchEvent(event)

发送事件消息,每个事件消息都有类型(type),所有监听此对象对应类型事件的监听者都会接收到相应的事件消息
Parameters:
Name Type Description
event string | module:events.Event 事件对象
Inherited From:
Overrides:

on(type, listener [, opt_this])

指定监听器监听指定类型的事件
Parameters:
Name Type Argument Default Description
type string 事件类型
listener callback | function 监听器
opt_this Object <optional>
target 在监听器中的`this`所指示的对象,默认是`target`自身
Inherited From:
Overrides:
Returns:
监听器的唯一标识.
Type
Object

once(type, listener [, opt_this])

指定监听器只监听一次指定类型的事件
Parameters:
Name Type Argument Default Description
type string 事件类型
listener callback | function 监听器
opt_this Object <optional>
target 在监听器中的`this`所指示的对象,默认是`target`自身
Inherited From:
Overrides:
Returns:
监听器的唯一标识.
Type
Object

un(type, listener [, opt_this])

取消指定监听器监听指定类型的事件
Parameters:
Name Type Argument Default Description
type string 事件类型
listener callback | function 监听器
opt_this Object <optional>
target 在监听器中的`this`所指示的对象,默认是`target`自身
Inherited From:
Overrides:

unByKey(key)

根据监听器的唯一标识取消指定监听器监听事件,监听器的唯一标识通过`on()`或者`once()`返回得到
Parameters:
Name Type Description
key Object | Array.<Object> 监听器的唯一标识,通过`on()`或者`once()`返回得到,可以是多个监听器的唯一标识数组
Inherited From:
Overrides: