微信小程序 使用腾讯地图SDK详解及实现步骤

前端之家收集整理的这篇文章主要介绍了微信小程序 使用腾讯地图SDK详解及实现步骤前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

微信小程序 使用腾讯地图SDK详解及实现步骤

 近期在做一款彩票服务类项目中用到了腾讯地图提供的小程序解决方案,拿来给大家分享一下!

  使用起来非常简单,就是一些功能还有待完善。

  官方文档:http://lbs.qq.com/qqmap_wx_jssdk/index.html

步骤:

  1. 申请开发者密钥(key):申请密匙
  2. 下载微信小程序JavaScriptSDK,微信小程序JavaScriptSDK v1.0
  3. 安全域名设置,需要在微信公众平台添加域名地址https://apis.map.qq.com
  4. 小程序示例
调用接口 qqmapsdk.search({ keyword: '彩票',success: function (res) { console.log(res); },fail: function (res) { console.log(res); },complete: function (res) { console.log(res); } }); })

结果效果图:

去购彩.png

5.核心类

5.1 地点搜索search(options:Object)

通过关键词keyword搜索周边poi,比如“酒店”“餐饮”“娱乐”“学校”等

去购彩界面的实现:

5.1.1 buy.js

调用接口   qqmapsdk.search({    keyword: '彩票',   page_size: 20,   success: function (res) {     console.log(res);     var resData = res.data;     for (var i = 0; i < resData.length; i++) {      resData[i]._distance = util.formatDistance(resData[i]._distance);//转换一下距离的格式     }     that.setData({resData: resData});    },   fail: function(res) {     console.log(res);    },   complete: function(res) {     console.log(res);    }   })  } })

<div class="jb51code">
<pre class="brush:js;">
// utils/util.js
/**

  • 将距离格式化
  • <1000m时 取整,没有小数点
  • 1000m时 单位取km,一位小数点
    */
    function formatDistance(num) {
     if (num < 1000) {
      return num.toFixed(0) + 'm';
     } else if (num > 1000) {
      return (num / 1000).toFixed(1) + 'km';
     }
    }

5.1.2 buy.wxml 主要样式采用weui

Box weui-media-Box_text"> Box__title weui-media-Box__title_in-text">{{item.title}} Box__desc">{{item.address}} Box__info"> Box__info__Meta">电话:{{item.tel}} Box__info__Meta weui-media-Box__info__Meta_extra">距离:{{item._distance}}

5.2 关键词输入提示getSuggestion(options:Object)

用于获取输入关键字的补完与提示,帮助用户快速输入。

示例:

调用接口 qqmapsdk.getSuggestion({ keyword: '技术',success: function(res) { console.log(res); },fail: function(res) { console.log(res); },complete: function(res) { console.log(res); } });

5.3 距离计算calculateDistance(options:Object)

计算一个点到多点的步行、驾车距离。

示例:

调用接口 qqmapsdk.calculateDistance({ mode: 'walking';//步行,驾车为'driving' to:[{ latitude: 39.984060,longitude: 116.307520 },{ latitude: 39.984572,longitude: 116.306339 }],success: function(res) { console.log(res); },complete: function(res) { console.log(res); } });

5.4 另外还有以下功能,就不一一演示了。

  1. getCityList(options:Object):获取全国城市列表数据;
  2. getDistrictByCityId(options:Object):通过城市ID返回城市下的区县;
  3. reverseGeocoder(options:Object):用于获取输入关键字的补完与提示,帮助用户快速输入
  4. geocoder(options:Object):提供由地址描述到所述位置坐标的转换,与逆地址解析reverseGeocoder()的过程正好相反。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持

原文链接:https://www.f2er.com/weapp/41217.html

猜你在找的微信小程序相关文章