npm package: @mapgis/webclient-common
Description: An important part of the MapGIS Client for JavaScript product, which provides interfaces and functions unrelated to the map engine.
Author: Wuhan Zondy Cyber Science&Technology Co.Ltd.
Latest version: 17.8.1

# 1、获取 MapGIS Client for JavaScript（common） 开发包

开发时需要引入 MapGIS Client for JavaScript（common）开发包；其中包括必备的 JS 文件；

开发库分为正式发行版和 Beta 版;

- 正式版：面向公网用户，半年发行一次，发行后不会增加新功能，仅会修订 BUG
- Beta 版：面向内网用户，每周发行一次，会修订 BUG 并增加新功能
  下面分别介绍两种版本包的获取方式：

## 1.1、正式发行版及其更新包

### 1.1.1、文件方式引入

**前往**[司马云官网](http://smaryun.com/dev/download_detail.html#/download828)**下载 MapGIS Client for JavaScript（common）开发库**

以 10.6.4.10 为例，其中：

**前往**[司马云官网](http://smaryun.com/dev/download_detail.html#/download828)**下载 MapGIS Client for JavaScript 开发库**

以 10.6.4.10 为例，其中：

- mapgis-client-for-javascript-dist-v10.6.4.10.rar 为开发库
- mapgis-client-for-javascript-all-v10.6.4.10.rar 为开发库+示例站点

**MapGIS Client for JavaScript（common）所需开发包位于如下文件夹中**

- webclient-common 库：`mapgis-client-for-javascript-all-v10.6.4.10\static\libs\cdn\zondyclient\webclient-common.min.js`
  **之后请将 webclient-common.min.js 文件拷贝出来，放入项目的静态资源目录**

### 1.1.2、npm 方式引入

**通过公网 NPM 的方式进行安装**

```typescript
npm install @mapgis/webclient-common
```

## 1.2、Beta 版

### 1.2.1、文件方式引入

**请前往内网开发库下载 MapGIS Client for JavaScript（common）相关开发包**

- [@mapgis/](http://192.168.11.130:4873/-/web/detail/@mapgis/webclient-common)[webclient-common](http://192.168.11.130:4873/-/web/detail/@mapgis/webclient-common)
  以 16.3.32 版本为例进行说明

  1.在该网页中请先选择要下载的版本

<center>
  <img src="http://webclient.smaryun.com/static/modules/common/source/img/开发指南_1.png" style="zoom:100%;" />
</center>

2.之后点击相应的版本号，在右侧点击下载按钮，下载压缩包

<center>
  <img src="http://webclient.smaryun.com/static/modules/common/source/img/开发指南_2.png" style="zoom:100%;" />
</center>

开发包位于`webclient-common-16.3.32\package\dist`中

**请将 `webclient-common.min.js`文件拷贝出来，放入项目的静态资源目录**

### 1.2.2、npm 方式引入

**请先将 npm 源切换为内网：**

```typescript
npm set registry http://192.168.11.130:4873/
```

**通过内网 NPM 的方式进行安装**

```plain
npm install @mapgis/webclient-common
```

# 2、如何引入开发库

## 2.1、文件方式引入

**在 index.html 中引入引擎库和插件库**

```typescript
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">
    <!--common库-->
    <script src="http://{ip}:{port}/{你的路径}/zondyclient/webclient-common.min.js"></script>
</head>
</html>
```

## 2.2、npm 方式引入

**通过 npm 的方式安装 MapGIS Client for JavaScript（common）库**

```typescript
npm install @mapgis/webclient-common
```


# 3、MapGIS Client for JavaScript（common）库开发入门

## 3.1、文件方式引入

**引入并使用 common 库**

```typescript
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">
    <!--common库-->
    <script src="http://{ip}:{port}/{你的路径}/zondyclient/webclient-common.min.js"></script>
    <script>
      // 例如初始化一个图层对象
      const mapImageLayer = new zondy.layer.IGSMapImageLayer()
    </script>
</head>
</html>
```

## 3.2、npm 方式引入

**以 VUE 项目为例，React 和 Angular 类似**

**引入需要的构造函数**

```typescript
import { IGSMapImageLayer } from '@mapgis/webclient-common'
```

**例如在 mounted 生命周期中初始化一个地图图片图层**

```typescript
// 初始化一个地图图片图层
const mapImageLayer = new IGSMapImageLayer()
```



# 4、@mapgis/webclient-common 版本说明

## 4.1、正式版

###  v17.8.1

**更新说明：**

1. 修复

- 修复 WMTS 图层克隆报错的问题

###  v17.8.0

**更新说明：**

1. 新增

- 场景下支持图标和图标上动态 Tip 的避让
- 提供视图卷帘工具（当前仅 leaflet 引擎中的 MapView 支持）
- 支持 GeoServer 平台发布的 WMS、WMTS、WFS 服务

2. 修复

- 统一部分符号属性在不同引擎上的效果差异

2. 优化

- 优化服务请求失败的状态信息
- GeoJson 接入能力增强，支持加载 MapGIS Desktop 上导出的 GeoJson (ESRI WKT)

###  v17.6.25

**更新说明：**

1. 功能优化

- 修复已知问题

###  v17.6.24

**更新说明：**

1. 功能优化

- 优化 gdal 库初始化加载问题

###  v17.6.23

**更新说明：**

1. 功能优化

- 修复已知问题

###  v17.6.22

**更新说明：**

1. 功能优化

- 草图编辑器中增加选中顶点的事件

###  v17.6.21

**更新说明：**

- 此版本无更新

###  v17.6.20

**更新说明：**

1. 功能新增

- 草图编辑器增加 editOption 配置编辑模式
- BaseView 中增加 innerView-created 引擎视图创建完毕事件

###  v17.6.19

**更新说明：**

1. 功能优化

- 解决图层视图还未加载完毕时移除图层失败的问题

###  v17.6.18

**更新说明：**

- 此版本无更新

###  v17.6.17

**更新说明：**

- 此版本无更新

###  v17.6.16

**更新说明：**

1. 功能新增

- BaseView 中的 goto 接口增加 goToLayerMode 参数，支持模式'extent'按数据范围跳转、'fix-level'按范围并调整到到整数级跳转

- 提供 BaseSwipeTool 接口支持对视图进行卷帘

###  v17.6.16

**更新说明：**

1. 功能新增

- BaseView 中的 goto 接口增加 goToLayerMode 参数，支持模式'extent'按数据范围跳转、'fix-level'按范围并调整到到整数级跳转

- 提供 BaseSwipeTool 接口支持对视图进行卷帘

###  v17.6.15

**更新说明：**

1. 功能新增

- 支持加载 GeoServer 平台发布的 WMS/WMTS/WFS 服务 
- IGS地图服务支持设置快显出图模式

1. 功能优化

- 修复部分要素图层查询要素报错的问题
- 修复地图服务图层 post 请求方式动态添加删除图层时报错的问题
- 修复 GeometryEngine 获取质心空间参考系错误的问题
- 修复 WMS 服务加载 IGS2.0 服务时，仍使用 IGS1.0 格式服务地址的问题

###  v17.6.14

**更新说明：**

1. 功能优化

- 支持 ogc wkt2.0 标准的投影变换

###  v17.6.13

**更新说明：**

1. 功能优化

- MapView 支持传入 innerView 引擎地图对象构造地图视图
###  v17.6.12

**更新说明：**

1. 功能优化

- MapView、SceneView 默认视角调整为中国区域，增加初始时是否跳转定位的参数控制
- 优化 MapView、SceneView 中 goTo 跳转方法的效果；goTo 时间间隔不传时，默认为地图引擎的动画效果

###  v17.6.11

**更新说明：**

1. 功能优化

- 修复 IGS 地图服务动态投影显示位置异常的问题
- 修复 WFS 图层渲染多区多边形异常的问题
- 修复测量工具中空间测量距离异常的问题


###  v17.6.10

**更新说明：**

1. 功能优化

- 修复 FetchServer 中 Error.isError 语法兼容性的问题

###  v17.6.9

**更新说明：**

1. 功能优化

- 修复 GeoJSONLayer 加载异常的问题


###  v17.6.8

**更新说明：**

1. 功能优化

- GeoJson接入能力增强，支持加载 MapGIS Desktop 上导出的 GeoJson (esri wkt)
- 优化服务请求失败的状态信息


###  v17.6.7

**更新说明：**

1. 功能优化

- 修复 IGS 栅格瓦片叠加无法预览的问题


###  v17.6.6

**更新说明：**

1. 功能优化

- 修复三维最大最小比例尺异常的问题
- 修复 WebTileLayer 无法识别自动加载天地图 WMST 服务地址

###  v17.6.5

**更新说明：**

1. 功能优化

- GeoJSON 图层能力增强，支持解析 crs 为 name 类型
- 增加支持 https、ftp、gopher、file 的 URL 服务协议

###  v17.6.4

**更新说明：**

- 此版本无更新

###  v17.6.3

**更新说明：**

1. 功能优化

- 地图服务图层、矢量瓦片图层、瓦片图层加载 IGS1.0 版本服务时，空间参考系调整为可选填的参数
- 优化图层load机制，load失败按 UnknowLayer 图层方案处理

###  v17.6.2

**更新说明：**

1. 功能优化

- 修复地图服务子图层设置renderer后无法恢复默认状态的问题
- 修复FeatureServer的queryFeaturesInLayers查询报错的问题

###  v17.6.1

**更新说明：**

1. 功能优化

- 修复加载二维点矢量数据发布的地图服务边缘缺失符号的问题
- 修复一些场景中GraphicsLayer中要素无法更新的问题
- 修复wmts服务代理后无法加载错误的问题

###  v17.6.0

**更新说明：**

1. 功能新增

- 服务接口支持请求头 Header 传 Token
- 支持加载 IGSImageServer 影像服务
- 支持接入 IGS 加密瓦片服务
- 地图服务（IGSMap地图服务、ArcGIS地图服务、WMS服务）支持全屏一张图加载方式

2. 功能优化

- IGSSceneLayer、ISSceneLayer子图层功能增强
- 草图编辑工具接口的优化并增强，支持动态设置几何图层、提示文字、高程模式
- SimpleLineSymbol、SimpleFillSymbol、TextSymbol等符号效果的优化和增强
- 枚举类型的规范化

###  v17.4.7

**更新说明：**

1. 功能优化

- 优化要素与图层叠加分析工作流接口说明
- 要素缓冲区分析分析接口增加resultName参数
- 修复GraphicsLayer的removeMany接口失效问题
- 修复草图编辑工具中草图选中事件无法监听的问题

###  v17.4.6

**更新说明：**

1. 功能优化

- 修复M3D图层根据图层id获取innerLayer异常的问题
- 修复ArcGIS地图服务未加载全部子图层的问题
- 优化WMTS服务加载逻辑

###  v17.4.5

**更新说明：**

1. 功能优化

- 修复草图编辑中文字、绘制区绘制异常的问题

###  v17.4.4

**更新说明：**

- 修复已知问题

###  v17.4.3

**更新说明：**

1. 功能新增

- IGS要素图层增加时间维度、网格过滤功能

2. 功能优化

- 修复要素服务多图层查询异常问题

###  v17.4.2

**更新说明：**

1. 功能优化

- 修复要素服务中参数解析错误的问题
- 增强要素对象的兼容性

###  v17.4.1 

**更新说明：**

1. 功能优化

- 修复API文档中部分接口文档缺失的问题
- 修复已知问题

###  v17.4.0 

**更新说明：**

1. 功能新增

- IGS要素图层支持传入FeatureServer中的查询参数
- 分段专题图支持归一化配置
- 新增IS场景图层，支持加载S3M数据

2. 功能优化

- 修复要素服务图层无法使用gdb地址的问题
- 优化矢量瓦片的子图层显隐逻辑


###  v17.2.8

**更新说明：**

1. 功能优化

- 修复要素图层样式无法修改问题
- 修复要素图层无法使用gdbp数据问题

###  v17.2.7

**更新说明：**

1. 功能优化

- 修复图层服务数据范围异常时的地图加载问题

###  v17.2.6

**更新说明：**

1. 功能优化

- 修复图层服务数据范围异常时的地图加载问题

###  v17.2.5

**更新说明：**

1. 功能优化

- 修复已知问题

###  v17.2.4

**更新说明：**

1. 功能优化

- 优化矢量瓦片的子图层显隐逻辑

###  v17.2.3

**更新说明：**

1. 功能优化

- extentOptions属性调整为extensionOptions
- 优化接口版权信息属性

###  v17.2.2

**更新说明：**

1. 功能优化

- 修复已知问题

###  v17.2.1 

**更新说明：**

1. 功能优化

- 优化命名空间结构
- 修复已知问题


###  v17.2.0 

**更新说明：**

1. 功能新增

- 矢量瓦片图层支持单独加载矢量瓦片服务中的子图层
- ArcGIS地图服务支持出一张图模式

2. 功能优化
- 优化投影变化功能使其支持自定义WKID投影


###  v17.0.0 

**更新说明：**

1. 功能新增

- 多引擎新增支持接入ArcGIS矢量瓦片服务
- 多引擎支持接入标准互联网瓦片服务
- 地图服务支持服务器端空间过滤显示
- 草图编辑支持手绘线、区，支持扩展三角形、椭圆类型
- 符号体系增加对三维符号和动态注记的支持

2. 功能优化

- 优化Echart图层效果，解决偏移问题



###  V16.8.0

**更新说明：**
- 矢量瓦图层和栅格瓦片图层支持空间裁剪

- 增加支持 ArcGISVectorTileLayer 加载

- 增加Basemap地图底图功能

- 丰富完善草图编辑相关功能

- 符号体系增强，Render接口的增强

  

###  V16.6.0

**更新说明：**
- 新增 Symbol 模块、SketchEditor 模块
- 增加 GeometryEngine 类。
- 丰富完善 MapView 上接口
- 维护更新，修复若干 Bug



###  V16.4.0

**更新说明：**
- 首次发行，提供 Geometry 模块、Feature 模块、Service 模块、Layer 模块、Map 模块、View 模块