Class: Link

ol/interaction/Link~Link


import Link from 'ol/interaction/Link.js';

将地图状态与 URL 同步的交互。

new Link(options)

Name Type Description
animate boolean | AnimationOptions (defaults to true)

动画化视图过渡。

params Array<Params> (defaults to ['x', 'y', 'z', 'r', 'l'])

要跟踪的属性。默认跟踪 x(中心 x)、y(中心 y)、z(缩放)、r(旋转)和 l(图层)。

replace boolean (defaults to false)

替换当前 URL 而不在浏览器历史中创建新条目。默认情况下,地图状态的更改会在浏览器历史中添加新条目。

prefix string (defaults to '')

默认情况下,URL 将使用搜索参数 x、y、z 和 r 进行更新。为避免与应用程序使用的现有搜索参数冲突,可以为此交互使用的参数提供自定义前缀(例如 'ol:')。

触发事件:

Extends

Observable Properties

Name Type Settable ObjectEvent type Description
active boolean yes change:active

如果交互处于激活状态则为 true,否则为 false

Methods

增加修订计数器并分发 'change' 事件。

dispatchEvent(event){boolean | undefined} inherited

分发事件并调用所有监听此类型事件的监听器。事件参数可以是一个字符串或一个 具有 type 属性的对象。

Name Type Description
event BaseEvent | string

事件对象。

返回值:
如果有人在事件对象上调用了 preventDefault 或任何监听器返回 false,则返回 false

获取一个值。

Name Type Description
key string

键名。

返回值:
值。

返回交互当前是否激活。

返回值:
如果交互处于激活状态则为 true,否则为 false

getKeys(){Array.<string>} inherited

获取对象属性名列表。

返回值:
属性名列表。

获取与此交互关联的地图。

返回值:
地图。

getProperties(){NoInfer.<Properties>} inherited

获取包含所有属性名和值的对象。

返回值:
对象。

getRevision(){number} inherited

获取此对象的版本号。 每次对象被修改时,其版本号将递增。

返回值:
版本号。

handleEvent(mapBrowserEvent){boolean} inherited

Name Type Description
mapBrowserEvent MapBrowserEvent

地图浏览器事件。

返回值:
false 以停止事件传播。

on(type, listener){EventsKey | Array<EventsKey>} inherited

监听特定类型的事件。

Name Type Description
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数。

返回值:
监听器的唯一键。如果第一个参数是事件类型数组,则返回键的数组。

once(type, listener){EventsKey | Array<EventsKey>} inherited

仅监听一次特定类型的事件。

Name Type Description
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数。

返回值:
监听器的唯一键。如果第一个参数是事件类型数组,则返回键的数组。

set(key, value, silent) inherited

设置一个值。

Name Type Description
key string

键名。

value *

值。

silent boolean | undefined

更新但不触发事件。

激活或停用交互。

Name Type Description
active boolean

是否激活。

setProperties(values, silent) inherited

设置一组键值对。 注意,这会更改任何现有属性并添加新属性(不会移除任何现有属性)。

Name Type Description
values Partial.<NoInfer.<Properties>>

值。

silent boolean | undefined

更新但不触发事件。

track(key, callback){string | null}

注册 URL 搜索参数的监听器。当相应的搜索参数因历史事件(如浏览器导航)而更改时,将使用新值调用回调函数。

Name Type Description
key string

URL 搜索参数。

callback Callback

当搜索参数更改时调用的函数。

返回值:
搜索参数的初始值(如果 URL 中不存在则为 null)。

un(type, listener) inherited

取消监听特定类型的事件。

Name Type Description
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数。

unset(key, silent) inherited

取消设置一个属性。

Name Type Description
key string

键名。

silent boolean | undefined

取消设置但不触发事件。

update(key, value)

使用新的搜索参数值更新 URL。如果值为 null,则从搜索参数中删除。

Name Type Description
key string

URL 搜索参数。

value string | null

更新后的值(或 null 以从 URL 中删除)。