Vue3 整合 ArcGIS 技术指南

在当今的地理信息系统(GIS) 开发领域,Vue3 作为一款流行的JavaScript 框架,与ArcGIS 强大的地图功能相结合,能够为开发者带来丰富且高效的应用开发体验。本文将详细介绍如何在 Vue3 项目中整合ArcGIS,助力开发者快速搭建具有地图展示与交互功能的应用。

在开始安装和配置ArcGIS之前,我们需要先创建一个Vue3的项目,如果还未创建Vue3的项目,请参考Vite 创建 Vue3 + TS 项目

1.安装ArcGIS

在项目的根路径下**(与src目录同级)**,运行命令行:

bash 复制代码
# 安装官方发布最新版本
$ npm install @arcgis/core

# 或安装指定版本
$ npm install @arcgis/core@4.24

在项目的入口文件(博主这里是main.ts)中全局引入ArcGIS样式:

javascript 复制代码
import "@arcgis/core/assets/esri/themes/dark/main.css"

2.使用ArcGIS

2.1.在对应的组件中引入ArcGIS

javascript 复制代码
import Map from "@arcgis/core/Map"
import MapView from "@arcgis/core/views/MapView"

2.2.初始化Map

javascript 复制代码
import Map from "@arcgis/core/Map"
import MapView from "@arcgis/core/views/MapView"

import { onMounted } from "vue";

const initMap = () => {
    const map = new Map({
        basemap: 'dark-gray',
    })

    const mapView = new MapView({
        map,
        container: 'ArcMap',
        center: [102.92934063304513, 25.102234987110343],
        zoom: 3,
    })
}

onMounted(() => {
    initMap()
})

2.3.渲染Map

html 复制代码
<template>
    <div class="system-user-container layout-padding">
        <el-card shadow="hover" class="layout-padding-auto">
            <div id="ArcMap"></div>
        </el-card>
    </div>
</template>

<style scoped>
#ArcMap {
  width: 100%;
  height: 80vh; 
}
</style>

最终,如果不出意外,你将会看到一个使用ArcGIS构建的简单地图界面:

3.注意事项

3.1.性能优化

在处理大量地理数据时,合理设置图层的可见范围、使用缓存等技术,可以有效提升应用的性能。

3.2.兼容性考虑

确保 Vue3ArcGIS API的版本兼容性,及时关注官方文档的更新,以获取最新的技术支持和解决方案。

若在使用中遇到依赖相关报错,请参考Vue3 + TS 集成 ArcGIS

ArcGIS中文网:首页 | ArcGis中文网

相关推荐
图件制作GIS,储量计算1 天前
补充耕地质量验收实施细则(试行)
arcgis·数据挖掘·数据分析
非科班Java出身GISer3 天前
ArcGIS JS 基础教程(21):PointCloudLayer 点云图层
arcgis·arcgis js 点云·arcgis js 点云图层·arcgis 点云图层·arcgis js 加载点云
暗中讨饭的卫33 天前
ArcGIS图形缓冲:点要素缓冲出长方形问题干货总结
arcgis
qingyulee4 天前
CLAUDE使用——vibe_coding
人工智能·arcgis
非科班Java出身GISer7 天前
ArcGIS JS 基础教程(19):3D Tiles 图层
arcgis·arcgis js 倾斜·arcgis js倾斜摄影·arcgis 3dtiles·arcgis js 加载倾斜
xiao5kou4chang6kai410 天前
GIS数据制备,空间分析与高级建模
arcgis·gis·空间数据
杨超越luckly11 天前
Agent应用指南:利用POST请求获取麦当劳门店位置信息
人工智能·arcgis·html·数据可视化·麦当劳
非科班Java出身GISer11 天前
ArcGIS JS 基础教程(18):SceneLayer 场景图层
arcgis·arcgis js 白膜·arcgis js 建筑·scenelayer 图层·arcgis js i3s
Li.map13 天前
CesiumJS 地图主题系统:用着色器打造实时滤镜
javascript·arcgis·cesium·着色器
中科GIS地理信息培训19 天前
【实操】在 ArcGIS Pro 中,计算多边形的面积时,需排除缓冲区要素中与多边形重叠的部分
arcgis·arcgis pro