Appearance
工具函数与常量
均为纯函数/常量,可按需 tree-shake。
格式化
ts
import { formatLength, formatArea } from 'geoverse';| 函数 | 签名 | 说明 |
|---|---|---|
formatLength | (line: Geometry) => string | 线长度人类可读(>100m 显示 km,否则 m) |
formatArea | (polygon: Geometry) => string | 面面积人类可读(>10000m² 显示 km²,否则 m²) |
颜色
| 函数 | 签名 | 说明 |
|---|---|---|
isHexColor | (value: string) => boolean | 是否十六进制颜色(#fff / #ffffff) |
调度
| 函数 | 签名 | 说明 |
|---|---|---|
runAlongTask | (task: () => void) => Promise<void> | 在帧预算(~16.6ms)内非阻塞执行任务,完成后 resolve |
ID 生成
ts
import { SnowflakeIdGenerator } from 'geoverse';
const gen = new SnowflakeIdGenerator();
gen.generate(); // number雪花 ID 生成(16 位精简版,受 JS Number 安全上限约束)。构造:new SnowflakeIdGenerator(workerId = 0, dataCenterId = 0, sequence = 0),方法 generate(): number。
视图
| 函数 | 签名 | 说明 |
|---|---|---|
fitChinaView | (map: Map) => void | 将视图调整为中国全境概览(中心约 [102.7, 30.05],zoom 5) |
DOM 辅助
仅可在浏览器上下文调用。
| 函数 | 签名 | 说明 |
|---|---|---|
stringToDom | (html: string) => ChildNode | null | HTML 字符串转 DOM 节点 |
domToString | (node: Node) => string | DOM 节点转 HTML 字符串 |
hasClass | (el: Element, name: string) => boolean | 是否含 class |
addClass / removeClass | (el: Element, name: string) => void | 增 / 删 class |
常量
| 常量 | 值 | 说明 |
|---|---|---|
version | 如 '1.0.0' | 包版本号 |
LayerKind | { Base, Cluster, Draw, Measure, Route, Track } | 图层种类标记(写入 layer.properties.type) |
CANCEL_BUBBLE_KEY | 'geoverse:cancelBubble' | 要素阻止事件冒泡的属性键 |
CLUSTER_FEATURE_KEY | 'geoverse:clusterFeature' | 聚合要素标记属性键 |
BASE_LAYER_TYPE | 'geoverse:base' | 底图标记(见 图层) |