微信小程序地图实时定位_小程序获取当前位置定位信息

微信小程序地图实时定位_小程序获取当前位置定位信息小程序获取当前位置,回到当前位置,地图定位,导航效果因为小程序更新了获取地理位置API接口,需要先在app.json中配置一下permission字段,不然会报微信小程序getLocation需要在app.json中声明permission字段app.json:(不知道具体位置可以看这里,这里有整个app.json的配置)”permission”:{…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

小程序获取当前位置,回到当前位置,地图定位,导航

效果

微信小程序地图实时定位_小程序获取当前位置定位信息

因为小程序更新了获取地理位置API接口,需要先在app.json中配置一下permission字段 ,不然会报微信小程序getLocation 需要在app.json中声明permission字段

app.json:   (不知道具体位置可以看这里,这里有整个app.json的配置)

 
 "permission": {
    "scope.userLocation": {
      "desc": "你的位置信息将用于小程序位置接口的效果展示"
    }
  }

wxml:

<!--pages/map/map.wxml-->

<!-- 这是地图部分 -->

<view class="map_container">
  <map class='map' longitude='{
  
  {longitude}}' latitude='{
  
  {latitude}}' scale='{
  
  {scale}}' markers='{
  
  {markers}}' controls="{
  
  {controls}}" bindcontroltap="bindcontroltap" polyline='{
  
  {polyline}}' circles="{
  
  {circles}}" bindmarkertap='bindmarkertap' bindcontroltap='bindcontroltap'
    show-location></map>
</view>


<!-- 以下是导航部分 -->

<view class='list-guide'>
<!-- 这里的坐标本应该是从服务器获取数据的,这时丈先写死在页面上了 -->
  <view bindtap="onGuideTap" data-latitude='39.92392' data-longitude='116.411885' data-bankName='最高人民检察院'>
    <image src='/images/banklist/daohang.png' class='list-guide-imgae'></image>
    <text class='list-guide-text'>导航</text>
  </view>
  <view bindtap='onbankTap' data-bankId="{
  
  {item.BANK_ID}}">
    <image src='/images/banklist/xiangqing.png' class='list-guide-imgae'></image>
    <text class='list-guide-text'>详情</text>
  </view>

</view>

宽度不是满屏,所以加个样式

wxss:

/* pages/map/map.wxss */
.map_container {
  height: 260px;
  width: 100%;
}

.map {
  height: 100%;
  width: 100%;
}




.list-guide{
  display: flex;  
  flex-direction: row; 
  justify-content:space-around;
  border-top: 1px solid #ededed;
  height: 80rpx;
}
.list-guide-imgae{
  height: 70rpx;
  width: 70rpx;
  margin-right: 20px;
  vertical-align: middle;
}
.list-guide-text{
  vertical-align: middle;
  line-height: 90rpx;
  font-size: 35rpx;
}

下面就是最重要的JS部分了()

JS:

// pages/map/map.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    addmissage: '选的位置',
    // markers	 Array	标记点
    stitle:'故宫',
    latitude: "",
    longitude: "",
    scale: 14,
    markers: [],
    //controls控件 是左下角圆圈小图标,用户无论放大多少,点这里可以立刻回到当前定位(控件(更新一下,即将废弃,建议使用 cover-view 代替))
    controls: [{
      id: 1,
      iconPath: '../../images/img/controls.png',
      position: {
        left: 15,
        top: 260 - 50,
        width: 40,
        height: 40
      },
      clickable: true
    }],
    distanceArr: []
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var that = this
    //获取当前的地理位置、速度
    wx.getLocation({
      type: 'wgs84', // 默认为 wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标
      success: function (res) {
        //赋值经纬度
        that.setData({
          latitude: res.latitude,
          longitude: res.longitude,

        })
      }
    })



  },
  //controls控件的点击事件
  bindcontroltap(e) {
    var that = this;
    if (e.controlId == 1) {
      that.setData({
        latitude: this.data.latitude,
        longitude: this.data.longitude,
        scale: 14,
      })
    }
  },
  //导航
  onGuideTap: function (event) {
    var lat = Number(event.currentTarget.dataset.latitude);
    var lon = Number(event.currentTarget.dataset.longitude);
    var bankName = event.currentTarget.dataset.bankname;
    console.log(lat);
    console.log(lon);
    wx.openLocation({
      type: 'gcj02',
      latitude: lat,
      longitude: lon,
      name: bankName,
      scale: 28
    })
  },



})

项目下载在这里

(只是地图部份,也有删减,非实际项目全部) 已更新

下面是我实际项目中的截图

微信小程序地图实时定位_小程序获取当前位置定位信息

微信小程序地图实时定位_小程序获取当前位置定位信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/188188.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Map和Set的区别「建议收藏」

    Map和Set的区别「建议收藏」Map和Set的区别—————————————–分割线—————————–  map和set都是stl中的关联容器,map以键值对的形式存储,key=value组成pair,是一组映射关系。set只有值,可以认为只有一个数据,并且set中元素不可以重复且自动排序,如果需要重复则使用multiset,要说…

    2022年9月7日
    0
  • php 字符串转换时间_php 字符时间如何转换「建议收藏」

    php 字符串转换时间_php 字符时间如何转换「建议收藏」php字符时间转换的方法:1、通过php中的“strtotime()”函数将任何英文文本的日期时间描述解析为时间戳;2、使用php中的“mktime()”函数从日期取得时间戳即可。本文操作环境:windows7系统、PHP5.6版,DELLG3电脑。php字符串转时间戳PHP提供了函数可以方便的将各种形式的日期转换为时间戳,该类函数主要是:strtotime():将任何英文文本的日期时间描述解…

    2022年6月2日
    29
  • PKI体系标准_三体系

    PKI体系标准_三体系转自CSDN.在PKI体系中涉及到四类标准,下面做个简单介绍。1.asn.1基本编码规范Asn.1是描述在网络上传输信息格式的标准方法。它有两个部分:第一部分(X.208)描述信息内的数据、数据类型及序列格式,也就是数据的语法;第二部分(X.209)描述如何将各部分数据组成消息,也就是数据的基本编码规则(DER编码)。Asn.1原来是作为X.409的一部分而开发的,后来独立发展

    2022年8月22日
    6
  • 安卓系统文件夹结构及其文件解析(详细)_不压缩文件夹设置密码

    安卓系统文件夹结构及其文件解析(详细)_不压缩文件夹设置密码安卓系统文件夹结构详解核system\\app这个里面主要存放的是常规下载的应用程序,可以看到都是以APK格式结尾的文件。在这个文件夹下的程序为系统默认的组件,自己安装的软件将不会出现在这里,而是\\data\\文件夹中。下面是详细的介绍:\\system\\app\\AlarmClock.apk闹钟\\system\\app\\AlarmClock.odex\\system\\…

    2022年10月9日
    0
  • ARM版Oracle安装包_如何把Linux移植到手机

    ARM版Oracle安装包_如何把Linux移植到手机  linux作为一款流行的嵌入式系统,目前已经有多种架构的MCU支持Linux移植,arm64就是其中一种。今天在这里想做一个笔记,记录一下完整的arm64移植过程。嵌入式Linux系统组成部分嵌入式Linux移植到开发板上时,主要有四个组成部分,下面一一列举。  在启动过程中,bootloader加载设备树文件(dtb),之后启动内核(Startkernel),进而加载根文件系统(debian或者ubuntu),最后进入系统。  那么我们所做的工作可以分为以下三部分:1、进行bootlo

    2022年9月17日
    0
  • java面试题及答案2020 大汇总

    java面试题及答案2020 大汇总java面试题及答案2020java面试题大汇总百度第一篇java面试题及答案2020先点赞后收藏,以后更新及时看文末后续更新答案,持续更新一面2018/9/11来自于牛客网1、手写ArrayList2、手写进制转换算法,求出一个数的二进制数1的个数3、JAVA基础,equals和==4、多线程方式、threadlocal,各种锁,synchronized和lock5、设计模式、spring类加载方式、实例保存在哪、aopioc、反射机制6、类加载器,双亲委派模

    2022年8月25日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号