ArcGIS Vue By Webpack 创建地图

如何使用 webpack 创建一个最基础的 ArcGIS 地图

效果

以下是 package.json 中需要的依赖

 

    "devDependencies": {
        ...
        "vue-template-compiler": "^2.6.10"
    },
    "dependencies": {
        ...
        "esri-loader": "^2.11.0",
        "vue": "^2.6.10"
    }

下面是 app.vue

<template>
    <div id="map"></div>
</template>
<style scoped>
    #map{
        width:100%;
        height:300px;
    }
</style>
<script>
import { loadModules } from 'esri-loader';
export default{
    mounted(){

        // 懒加载模块
        loadModules([
	    	'esri/layers/WebTileLayer',
            'esri/Map',
            'esri/views/SceneView',
    	], { css: true })
	    .then(([WebTileLayer,Map,SceneView]) => {

	    	let map = new Map();

            // 使用谷歌地图切片
	    	let tiled_layer = new WebTileLayer({
				urlTemplate: 'http://www.google.cn/maps/vt/pb=!1m4!1m3!1i{level}!2i{col}!3i{row}!2m3!1e0!2sm!3i345013117!3m8!2szh-CN!3scn!5e1105!12m4!1e68!2m2!1sset!2sRoadmap!4e0',
			});
			map.add(tiled_layer);

            // 创建 view
	        let map_view = new SceneView({
	        	map:map,
	        	container:"map",          
		        scale:110329633.40563367, 
		        center:[105.578034,34.062071]
	        });

	    });
    }
}
</script>

这个例子完全就是文档里面的例子

仔细阅读文档可以解决 99% 的问题。

 

### 如何在 Vue 中集成 ArcGIS #### 安装依赖库 为了能够在 Vue 项目中使用 ArcGIS API for JavaScript,需要安装 `@arcgis/core` 库。可以利用 npm 来完成此操作。 ```bash npm install @arcgis/core ``` #### 创建地图视图组件 创建一个新的 Vue 单文件组件来初始化并显示地图视图。下面是一个简单的例子: ```html <template> <div id="viewDiv"></div> </template> <script> import { onMounted } from 'vue'; // 导入必要的模块 import Map from "@arcgis/core/Map"; import MapView from "@arcgis/core/views/MapView"; export default { name: "ArcGisMap", setup() { let view; onMounted(() => { const map = new Map({ basemap: "streets-navigation-vector" }); view = new MapView({ container: "viewDiv", // 将要放置MapView的DOM节点ID map, // 关联的地图对象 zoom: 4, center: [-97.8028, 30.7546] // 地理坐标位置 }); }); return {}; } }; </script> <style scoped> #viewDiv { width: 100%; height: 600px; } </style> ``` 这段代码展示了如何通过 ES 模块方式加载 ArcGIS API 并将其与 Vue 生命周期挂钩相结合[^1]。 #### 配置 Webpack 解析 AMD 模块 由于 ArcGIS API 是基于 AMD (Asynchronous Module Definition) 的架构设计,在某些情况下可能还需要配置 webpack 处理解析这些模块的方式。如果遇到任何构建错误,则应考虑调整项目的 webpack.config.js 文件以支持 AMD 加载器。 对于更详细的实现细节以及完整的案例研究,可参考开源仓库中的实际应用实例[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值