# 地图(Ships66)
# 静态属性说明
| 属性名 | 说明 |
|---|---|
| layers | 存放图层类 |
| controls | 存放控件 |
| mapName | 图源枚举对象 |
| map | map (opens new window)对象 |
# 静态方法
# 实例化
# new Ships66(key)
船顺地图的实例对象
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|---|---|---|---|---|
| key | 船顺密钥 | String | - | - |
方法
# init(id,viewOption, option){}
地图初始化
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|---|---|---|---|---|
| id | dom元素id | String | - | - |
| viewPotion | openlayers/view (opens new window)配置项 | Object | - | { constrainResolution:true,multiWorld: true,enableRotation: false,extent: [Number.NEGATIVE_INFINITY, -20037508.342789244, Number.POSITIVE_INFINITY, 20037508.342789244]} |
| option | 配置项,属性见下方 | Object | - | - |
| 属性名 | 说明 | 类型 | 可选值 | 默认值 |
|---|---|---|---|---|
| defaultName | 地图默认显示的瓦片 | String | - | layers[0] |
| layers | 切换地图底图瓦片的集合 | Array<String> | - | ['MT_OSM','MT_SATE'] |
| sourceOption | 自定义瓦片 | Object | - |
sourceOption说明 目前自定义瓦片仅支持xyz图源,如需其他图源请自行百度查阅
覆盖地图基础图层:
{
"MT_SATE": {
"scale": 2,
"url": "xyz图源地址"
},
"MT_OSM": {
"scale": 1,
"url": "xyz图源地址"
}
}
自定义图层:
{
"BAR": {
"scale": 1,
"url": "xyz图源地址"
}
}
loadTileToMap('BAR')
# changeBaseMap(sourceName)
切换底图瓦片源
sourceName : 上方option配置项 layers数组的某个值
# addControl(name,option)
添加地图控件
name可选值:mousePosition(鼠标移动显示经纬度),scaleLine(比例尺),fullScreen(全屏)
option可配置项,不传采用默认项:openlayer control对应子类的配置项,例如mousePosition (opens new window)
TIP
如需覆盖css样式,请通过开发者模式查看元素className,覆盖处理
# loadTileToMap(sourceName,option,xyzOption)
添加图源到地图上
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|---|---|---|---|---|
| sourceName | 图源名字 | String | 见下方 | - |
| option | layer/tile (opens new window) 配置项 | Object | - | { minZoom: 2, maxZoom: 18 } |
| xyzOption | source/XYZ (opens new window) 配置项 | Object | - | {} |
sourceName 可选值
| 名字 | 说明 |
|---|---|
| MT_CNMAP | 海图 |
| MT_TIANDI_CVA | 地图标注 |
| GREEN_DOT | 船舶绿点图 |
TIP
添加到地图的图源会赋值在实例对象的layers属性对象中
示例:
ships.loadTileToMap('GREEN_DOT')
const greenLayer = ships.layers['GREEN_DOT']
# getServerData(option) => {Promise}
网络请求方法
返回 Promise
option说明
| 属性名 | 说明 | 类型 | 可选值 | 默认值 |
|---|---|---|---|---|
| url | 请求地址 | String | - | - |
| method | 请求方式 | String | - | GET |
| formData | post请求,请求参数是否为formData | Boolean | - | true |
| data | 请求参数 | Object | - | - |
需要添加其他属性或者请求头参考axios (opens new window)
调用示例
getServerData({
url:'',
method:'post',
data:{},
}).then(res=>{//返回的数据
}).catch(err=>{//失败
})
# getLocation() => {Promise}
定位函数
返回 Promise
TIP
电脑端浏览器定位获取的是城市定位