uniapp调用地图,进行位置查询,标记定位
这周开会又新增一个小功能,就是需要通过身份证号/手机号在地图查询(后台返回经纬度),标记位置,想着挺麻烦,做的时候发现没啥技术,分享给大家。
<map class="map" :longitude="longitude" :latitude="latitude" scale="16" :markers="markers" show-location="true"></map>
data() {
return {
longitude: "", // 当前位置经度
latitude: "", // 当前位置纬度
markers: [], // 获取位置的标记信息
}
}
methods: {
searchBtn(){
let then = this;
uni.getLocation({
type: 'wgs84',
geocode: true, //设置该参数为true可直接获取经纬度及城市信息
success: function (res) {
// res会返回当前经纬度信息之类,如果默认想展示当前位置,下面经纬度可直接使用res的值,如果默认展示指定位置,那就自定义经纬度即可;
then.longitude = '116.407526';
then.latitude = '39.904030';
then.markers = [
{
title: '',
latitude: then.longitude,
longitude: then.latitude,
height: 100,
width: 100,
iconPath: 'http://cdn.duanqinghua.com/duanqinghua/img/55.jpg'
}
]
}
});
}
}
然后每次查询,通过调后台接口,拿到对应经纬度,赋值给longitude和latitude,那么地图就会展示对应经纬度区域,如果同时想展示定位的图标,那就按上方方式给markers赋值,可标记多个位置。
(获取到数据后,最好不要直接给markers赋值,先let随便定义一个赋值,再将let定义的赋给markers,否则会出现不显示标记点现象)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了