uniapp加载leaflet地图

uni-app加载leaflet地图,需要借助于renderjs,直接上代码,供大家参考指正

<view class="leaflet-map-page">
		<view :prop="dataObj" :change:prop="leaflet.drawMarker" id="map" class="map">   </view>
</view>

<script>
	export default {
		components: {
		},
		data() {
			return {
				dataObj : {},
				dataList : [],
			}
		},
		mounted() {
            this.dataObj = {
                dataList : [],
            }
		},
		methods: {
			
		}
	}
</script>


<script module="leaflet" lang="renderjs">
	const L = require('@/static/leaflet/leaflet-1.3.4.min.js');
	import '@/static/leaflet/leaflet-1.3.4.css';
	
	let map = null;
	let layerGroup = null;
	
    export default {
	  mounted() {
	  	this.init();
	  },
	  methods:{
			init(){
				map = L.map('map',{
					zoomControl : false
				}).setView([32.7302595,111.4355275],10);
				L.tileLayer("http://t0.tianditu.com/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=0064dec30e2d06d872cf71b4cbb9bbce")
				.addTo(map);
				
				L.control.zoom({
					position:'bottomright',
				}).addTo(map);
			},
			drawMarker(newValue, oldValue, ownerInstance, instance){
				let {dataList} = newValue;
				// 此处写想要实现的效果的方式
				
			},
			clearMarker(){
				if (layerGroup !== null) {
					layerGroup.clearLayers();
					layerGroup = null;
				}
			}
		}
  }
</script>

效果图
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
Uniapp是一个基于Vue.js的跨平台开发框架,可以用于开发iOS、Android、H5等多个平台的应用程序。而Leaflet是一个开源的JavaScript库,用于在Web上创建交互式地图。天地图是中国国家地理信息公共服务平台提供的地图服务。 要在Uniapp中使用Leaflet地图热力图,可以按照以下步骤进行操作: 1. 在Uniapp项目中安装Leaflet库。可以使用npm或者yarn命令进行安装,例如:`npm install leaflet`。 2. 在需要使用地图的页面中引入Leaflet库。可以在页面的`<script>`标签中使用`import L from 'leaflet'`语句引入。 3. 创建一个地图容器。可以在页面的`<template>`标签中添一个`<div>`元素作为地图容器,例如:`<div id="map"></div>`。 4. 初始化地图对象。在页面的`<script>`标签中,使用`L.map()`方法创建一个地图对象,并指定地图容器的id,例如:`const map = L.map('map')`。 5. 添地图瓦片图层。使用`L.tileLayer()`方法创建一个天地图瓦片图层对象,并将其添地图对象中,例如: ``` const tileLayer = L.tileLayer('http://t{s}.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=yourKey', { subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'], attribution: '天地图' }); tileLayer.addTo(map); ``` 其中,`yourKey`需要替换为你自己的天地图开发者密钥。 6. 热力图数据。使用`L.heatLayer()`方法创建一个热力图层对象,并将其添地图对象中,例如: ``` const heatLayer = L.heatLayer(data, { radius: 20, blur: 15, maxZoom: 10 }); heatLayer.addTo(map); ``` 其中,`data`是一个包含热力图数据的数组,每个数据点包含经纬度和权重信息。 至此,你就可以在Uniapp中使用Leaflet地图热力图了。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值