# new SubLayer(options)
å图层基类
傿•°
åç§° | 类型 | 默认值 | æè¿° |
---|---|---|---|
options |
Object | æž„é€ å‚æ•° |
|
id |
String | getGUID() | 图层id,ä¸ç»™åˆ™ç”Ÿæˆéšæœºid |
layer |
Layer | null | 父图层对象 |
sublayers |
Collection | new Collection() | 包å«çš„å图层对象 |
title |
String | null | 图层åç§° |
visible |
Boolean | true | 图层å¯è§æ€§ |
extensionOptions |
Object | {} | åˆå§‹åŒ–图层的é¢å¤–傿•°ï¼Œå¯ä»¥é€šè¿‡è¯¥å‚æ•°ä¼ å…¥å¼•æ“ŽåŽŸç”Ÿçš„æž„é€ å‚æ•° |
extendProps |
Object | {} | 当å‰å›¾å±‚å¯¹è±¡ä¸Šä¸æ”¯æŒçš„属性,二次开å‘用户希望挂在图层对åƒä¸Šçš„属性å¯ä»¥å˜å‚¨åˆ°è¯¥å±žæ€§ä¸ |
继承关系
æˆå‘˜å˜é‡
æˆå‘˜å˜é‡æ¦‚è¿°
åç§° | 类型 | æè¿° |
---|---|---|
extendProps |
Object
|
|
extensionOptions |
Object
|
|
id |
String
|
|
layer |
Layer
|
|
layer |
Layer
|
|
spatialReference |
SpatialReference
|
|
sublayers |
Array
|
|
title |
String
|
|
visible |
Boolean
|
|
æˆå‘˜å˜é‡è¯¦æƒ…
# extendProps
åˆå§‹åŒ–当å‰å›¾å±‚å¯¹è±¡ä¸Šä¸æ”¯æŒçš„属性,二次开å‘用户希望挂在图层对åƒä¸Šçš„属性å¯ä»¥å˜å‚¨åˆ°è¯¥å±žæ€§ä¸
- Default Value:
- {}
# extensionOptions
åˆå§‹åŒ–图层的é¢å¤–傿•°ï¼Œå¯ä»¥é€šè¿‡è¯¥å‚æ•°ä¼ å…¥å¼•æ“ŽåŽŸç”Ÿçš„æž„é€ å‚æ•°
- Default Value:
- {}
方法
方法概述
åç§° | 返回值类型 | æè¿° |
---|---|---|
clone |
SubLayer
|
|
off |
Object
|
|
on |
Object
|
|
toJSON |
Object
|
|
方法详情
# off(typesopt, fnopt, contextopt)
移除事件
示例如下:
[1ã€ç§»é™¤ä¸€ä¸ªäº‹ä»¶çš„æŒ‡å®šå›žè°ƒå‡½æ•°]
[2ã€ç§»é™¤ä¸€ä¸ªäº‹ä»¶çš„æ‰€æœ‰å›žè°ƒå‡½æ•°]
[3ã€ç§»é™¤å¤šä¸ªäº‹ä»¶çš„åŒä¸€ä¸ªæŒ‡å®šçš„回调函数]
[4ã€ç§»é™¤å¤šä¸ªæŒ‡å®šäº‹ä»¶çš„回调函数]
[5ã€åˆ 除时指定上下文 - types类型为å—符串]
[6ã€åˆ 除时指定上下文 - types类型为对象]
傿•°
åç§° | 类型 | æè¿° |
---|---|---|
types |
string | 移除指定事件类型上绑定的回调函数 |
fn |
function | 事件回调函数,当types为å—ç¬¦ä¸²ï¼Œä¸”ä¸æŒ‡å®šè¦åˆ é™¤çš„å›žè°ƒå‡½æ•°æ—¶ï¼Œåˆ é™¤è¯¥äº‹ä»¶ä¸Šçš„æ‰€æœ‰å›žè°ƒå‡½æ•° |
context |
Object | 事件回调函数的this关键å—将指å‘的对象 |
- Inherited From:
当å‰å®žä¾‹
示例
移除一个事件的指定回调函数
// 一个事件的回调函数
const clickFunction = function (event) {
console.log("点击事件:", event)
}
// 调用MapView或SceneView的off方法移除一个事件的回调函数
view.off('click', clickFunction)
移除一个事件的所有回调函数
// 一个事件的回调函数1
const clickFunction1 = function (event) {
console.log("点击事件1:", event)
}
// 一个事件的回调函数2
const clickFunction2 = function (event) {
console.log("点击事件2:", event)
}
// 调用MapView或SceneView的off方法移除一个事件的所有回调函数
// 䏿Œ‡å®šå›žè°ƒå‡½æ•°ï¼Œåˆ™ç§»é™¤è¯¥äº‹ä»¶ä¸Šçš„æ‰€æœ‰ç»‘定的回调函数
view.off('click')
移除多个事件的åŒä¸€ä¸ªæŒ‡å®šçš„回调函数
// 多个事件的åŒä¸€ä¸ªå›žè°ƒå‡½æ•°
const eventFunction = function (event) {
console.log("事件:", event)
}
// 调用MapView或SceneViewçš„off方法移除多个事件的åŒä¸€ä¸ªæŒ‡å®šçš„回调函数
view.off('click double-click', eventFunction)
移除多个指定事件的回调函数
// 一个事件的回调函数
const clickFunction = function (event) {
console.log("click事件:", event)
}
// 调用MapView或SceneView的off方法移除多个指定事件的回调函数
view.off({
// 移除click事件上一个指定的函数
"click": clickFunction,
// 移除double-click上所有指定的函数
"double-click": undefined
})
åˆ é™¤æ—¶æŒ‡å®šä¸Šä¸‹æ–‡ - types类型为å—符串
// 一个事件的回调函数
const clickFunction = function (event) {
console.log("点击事件:", event)
}
// 调用MapView或SceneView的off方法移除一个事件的回调函数
view.off('click', clickFunction, view)
// 调用MapView或SceneView的off方法移除一个事件的所有回调函数
view.off('click', undefined, view)
åˆ é™¤æ—¶æŒ‡å®šä¸Šä¸‹æ–‡ - types类型为对象
// 一个事件的回调函数
const clickFunction = function (event) {
console.log("click事件:", event)
}
// 调用MapView或SceneView的off方法移除多个指定事件的回调函数
view.off({
// 移除click事件上一个指定的函数
"click": clickFunction,
// 移除double-click上所有指定的函数
"double-click": undefined
}, view)
# on(typesopt, fnopt, contextopt)
注册一个新的监å¬äº‹ä»¶;
示例如下:
[1ã€æ³¨å†Œä¸€ä¸ªäº‹ä»¶]
[2ã€ä¸€æ¬¡æ³¨å†Œå¤šä¸ªäº‹ä»¶ - åŒä¸€ä¸ªå›žè°ƒå‡½æ•°]
[3ã€ä¸€æ¬¡æ³¨å†Œå¤šä¸ªäº‹ä»¶ - 分别指回调应函数]
[4ã€å½“types为å—符串时 - 指定上下文]
[5ã€å½“types为对象时 - 指定上下文]
傿•°
åç§° | 类型 | 默认值 | æè¿° |
---|---|---|---|
types |
String | Object | null | 事件类型 |
fn |
function | null | 事件回调函数 |
context |
Object | null | 事件回调函数的this关键å—将指å‘的对象 |
- Inherited From:
当å‰å®žä¾‹
示例
注册一个事件
// åˆå§‹åŒ–一个点击事件回调函数
const clickFunction = function (event) {
console.log("点击事件:", event)
}
// 调用MapView或SceneView的on方法注册一个点击事件
view.on('click', clickFunction)
一次注册多个事件 - åŒä¸€ä¸ªå›žè°ƒå‡½æ•°
// åˆå§‹åŒ–一个事件回调函数
const eventFunction = function (event) {
console.log("事件:", event)
}
// 调用MapView或SceneView的on方法注册多个事件
// 多个事件类型使用åŒä¸€ä¸ªå›žè°ƒå‡½æ•°
view.on('click right-click-down', eventFunction)
一次注册多个事件 - 分别指回调应函数
// åˆå§‹åŒ–一个左键点击事件回调函数
const clickFunction = function (event) {
console.log("click事件:", event)
}
// åˆå§‹åŒ–一个å³é”®æŒ‰ä¸‹äº‹ä»¶å›žè°ƒå‡½æ•°
const rightClickFunction = function (event) {
console.log("right-click-down事件:", event)
}
// 调用MapView或SceneView的on方法注册多个事件
// æ¯ä¸€ä¸ªäº‹ä»¶ç±»åž‹ï¼Œä½¿ç”¨å•独的回调函数
// 注æ„使用æ¤ç§æ–¹å¼ï¼Œä¸€ç§ç±»åž‹çš„事件仅能指定一个回调函数
view.on({
"click": clickFunction,
"right-click-down": rightClickFunction
})
指定上下文 - types类型为å—符串
// åˆå§‹åŒ–一个点击事件回调函数
const clickFunction = function (event) {
console.log("点击事件:", event)
console.log("上下文对象:", this)
}
// 调用MapView或SceneView的on方法注册一个点击事件
// 指定view为回调函数的上下文对象
view.on('click', clickFunction, view)
指定上下文 - types类型为对象
// åˆå§‹åŒ–一个点击事件回调函数
const clickFunction = function (event) {
console.log("点击事件:", event)
console.log("上下文对象:", this)
}
// 调用MapView或SceneView的on方法注册一个点击事件
// 指定view为回调函数的上下文对象
view.on({
"click": clickFunction,
"right-click-down": clickFunction
}, view)