欢迎来到258分享网,纯净的网络源码分享基地!

258资源分享网

全部作品
全部作品
网站源码
微信源码
素材特效
源码插件
视频教程
建站学院
热门搜索: 织梦  农业种植  农业  安全设置  官方
258资源分享 > 建站学院 > 微信开发 > 微信小程序定位--获取经纬度城市街道等位置信息

推荐下载

HTML5响应式自适应网咯设计

2020-05-12   浏览:740

高端HTML5响应式企业通用网

2020-05-06   浏览:521

html5响应式外贸网站英文版

2020-05-08   浏览:510

HTML5自适应律师工作室类网

2020-04-04   浏览:504

HTML5影视传媒文化公司类网

2020-05-12   浏览:501

微信小程序定位--获取经纬度城市街道等位置信息

发布时间:2020-12-31  

请先看微信小程序关于定位的API:https://mp.weixin.qq.com/debug/wxadoc/dev/api/location.html#wxgetlocationobject可以看到:小程序 ...

 

 

 

请先看微信小程序关于定位的API:https://mp.weixin.qq.com/debug/wxadoc/dev/api/location.html#wxgetlocationobject

可以看到:小程序只提供了一个获取地理位置、速度的api,并没有关于地位位置的信息等,因此需要借助一些第三方的api来实现。

实现方法一:百度地图API

1.登录百度开放平台并申请AK,填写相关信息。

微信小程序定位--获取经纬度城市街道等位置信息

微信小程序定位--获取经纬度城市街道等位置信息

2.在项目根目录下新建一个路径,下载百度地图微信小程序JavaScript API,解压后得到 bmap-wx.js 文件(解压后有bmap-wx.js和bmap-wx.min.js两种文件,考虑到轻量化,建议用压缩版的bmap-wx.min.js),将其拷贝到新建的路径下,完成。

3.设置请求合法域名

登录微信公众平台-> "设置" -> "开发设置" -> "request 合法域名" ->添加 api.map.baidu.com -> 点击"保存并提交",如图所示:

微信小程序定位--获取经纬度城市街道等位置信息

打开开发者工具 -> "项目" -> 点击"刷新",合法域名设置同步完成。

4. 使用:

[javascript] view plain copy

 

var app = getApp()  

// 引用百度地图微信小程序JSAPI模块   

var bmap = require('../../utils/bmap-wx.js');   

var wxMarkerData = [];  //定位成功回调对象    

Page({  

  /** 

   * 页面的初始数据 

   */  

  data: {  

    ak: "。。。"//填写申请到的ak    

    markers: [],     //地图标记  

    longitude: '',   //经度    

    latitude: '',    //纬度    

    address: '',     //地址    

    business: {},    //商圈   

    desc:'' ,        //描述  

  },  

 onLoad: function (options) {  

    console.log("定位");  

    var that = this;  

    //新建百度地图对象  

    var BMap = new bmap.BMapWX({  

      ak: that.data.ak  

    });  

    var success = function(data){  

      console.log(data);  

      wxMarkerData = data.wxMarkerData;  

      that.setData({  

        markers:wxMarkerData,  

        latitude: wxMarkerData[0].latitude,  

        longitude:wxMarkerData[0].longitude,  

        address:wxMarkerData[0].address,  

        business: wxMarkerData[0].business,  

        desc: wxMarkerData[0].desc,  

        city: wxMarkerData[0].title,  

      });  

    }  

    var fail = function(data){  

      console.log(data);  

    }  

    BMap.regeocoding({  

      fail:fail,  

      success:success  

    });  

  },  

})  


[html] view plain copy