uniapp 小程序中百度地图的使用,通过地址获取经纬度,导航至该地址 --详细 2024

场景:接口返回一个地址如(北京市天安门),点击导航,调用地图,导航至该地点。

实现方法:

第一步:登录百度地图开放平台 申请百度ak  ,https://lbsyun.baidu.com/(没有账号则先去创建一个百度账号)

第二步,进入百度地图开放平台控制台(导航栏“控制台”),点击“应用管理”-“我的应用”,创建应用。

4、下载百度地图微信小程序JavaScript API

下载链接:微信小程序JavaScript API - 配置环境 | 百度地图API SDK

下载百度地图微信小程序JavaScript API,解压后的文件中有 bmap-wx.js 文件(压缩版 bmap-wx.min.js ),将其拷贝到static/js目录下

5.引入和使用

<template>
    <view class="content">
        <text class="map" @tap="showMap">查看地图</text>
    </view>
</template>
<script src="/static/js/bmap-wx.min.js"></script>
<script>
  // 引入百度地图API
  const bmap = require('../static/js/bmap-wx.min.js');
  const BMapWX = bmap.BMapWX;
//    这个地方是你在百度地图中申请的ak
  var BMap = new BMapWX({ak:你申请的ak	});
  export default {
    components: {
      nodata
    },
    data() {
      info: {},
    },
    onShow() {
      this.getData()
    },
    methods: {
        getData(){
          let address = '北京市天安门广场'
          BMap.geocoding({ 
              address: address , 
              fail(res){ console.log(res) }, 
              success(res){
                 that.info.latitude = res.result.location.lat;
                 that.info.longitude = res.result.location.lng;
                 console.log(res.result.location.lng,'jingdu')
                 console.log(res.result.location.lat,'weidu')
              }, 
         }); 
      },
       showMap() {
        let that = this;
        // 打开系统位置地图
        uni.openLocation({
              latitude:parseFloat(that.info.latitude),
              longitude:parseFloat( that.info.longitude),
              name: that.info.address,
              success:function (res) {
                  console.log('打开系统位置地图成功')
              },
              fail:function (error) {
                  console.log(error)
              }
          })
      }
    }
  }  

6.效果

要在uniapp使用百度地图导航功能,你可以按照以下步骤进行操作: 1. 首先,注册并认证你的百度开放平台账号,获取使用百度地图的AK密钥。你可以在百度开放平台网站上完成这个过程。 2. 在你的uniapp项目的公共文件夹(一般是common文件夹)创建一个名为AMap.js的文件,并在其添加代码。这个文件的作用是引入百度地图的API,并提供给你的uniapp项目使用。 3. 在需要使用地图的.vue文件添加相应的代码。你可以在模板添加一个具有相应id的div元素,用于容纳地图。然后,在`onLoad`生命周期钩子函数调用`getLocalCity`方法。 4. 在`getLocalCity`方法使用`BaiDuMap`函数来初始化地图,并进行定位。你可以在其创建一个新的地图实例,并设置地图的心点和缩放级别。然后,使用`BMapGL.Geolocation`类获取用户的当前位置,并在地图上显示一个标记和定位到该位置。 5. 最后,在`BaiDuMap`函数,判断是否已经引入百度地图的API。如果没有引入,则动态创建一个script标签,并将百度地图的API地址作为其src属性值。同时,通过回调函数来解析这个Promise,并返回`BaiDuMap`函数。如果已经引入了百度地图的API,则直接返回Promise,并解析这个Promise。 通过以上步骤,你就可以在uniapp使用百度地图导航功能了。记得替换代码的`AK密钥`为你自己的百度AK密钥。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值