文章目录

  • 一、H5移动端
    • 1. 安装vue-jsonp
    • 2. 引入腾讯sdk
    • 3. 实例化
    • 4. 二点求距离
    • 5. 多点求距离

文档地址:
https://lbs.qq.com/service/webService/webServiceGuide/webServiceDistance

一、H5移动端
1. 安装vue-jsonp
 npm i -S vue-jsonp

main.js

//解决跨域
import {VueJsonp} from 'vue-jsonp'
Vue.use(VueJsonp)
2. 引入腾讯sdk

直接使用小程序的sdk会有跨域问题,因此,此sdk,根据小程序sdk修改而成的

下载链接:https://gitee.com/gblfy/qywx-vue2-vant-h5/tree/master/src/assets/js/qqmap-wx-jssdk.js

引入qqmap-wx-jssdk.js

import QQMapWX from '@/assets/js/qqmap-wx-jssdk.js'
3. 实例化
 qqMap: new QQMapWX({key: '腾讯申请的key',vm: this}),
4. 二点求距离
  //计算二点之间的距离calculateTwoPlaceDistance() {const _this = this;//调用距离计算接口_this.qqMap.calculateDistance({//mode: 'driving',//可选值:'driving'(驾车)、'walking'(步行),不填默认:'walking',可不填//from参数不填默认当前地址//获取表单提交的经纬度并设置from和to参数(示例为string格式)// from: e.detail.value.start || '', //若起点有数据则采用起点坐标,若为空默认当前地址// to: e.detail.value.dest, //终点坐标mode: "straight",from: "39.77466,116.55859", //当前位置的经纬度to: "39.775091,116.56107", //办公地点经纬度 "北京市通州区经海三路137号"success: (res) => { //成功后的回调// debugger// console.log(res);let hw = res.result.elements[0].distance; //拿到距离(米)// console.log("hw", hw);if (hw && hw !== -1) {if (hw < 1000) {hw = hw + "m";}//转换成公里else {hw = (hw / 2 / 500).toFixed(2) + "km";}} else {hw = "距离太近或请刷新重试";}// console.log("当前位置与办公地点距离:" + hw);alert("当前位置与办公地点距离:" + hw)},});},

5. 多点求距离

多点与当前经纬度之间的距离(计算当前经纬度和多地打卡地经纬度之间的距离)

 calculateMorePlaceDistance() {const that = this;//调用距离计算接口that.qqMap.calculateDistance({from: {latitude: that.latitude,longitude: that.longitude},to: that.moreWorkPlace, //strs为字符串,末尾的“;”要去掉success: function (res) {// console.log("多地求距离->", res)const moreWorkDistanceList = [];const distanceList = res.result.elements;for (var i = 0; i < distanceList.length; i++) {const distAddress = distanceList[i].distance;// 把计算出来的距离放到数组容器中,等会统一计算moreWorkDistanceList.push(distAddress)// console.log("多地打卡数组追加元素->", moreWorkDistanceList);}/*** 转换单位不利于计算,统一用m单位,一起计算,求出数组中最小的一个,最后和设定的办公距离(愿),比较大小;* 1.如果小于设置距离,属于考勤范围内* 2.如果大于设置距离,属于外勤范围*/that.moreWorkDistanceListTemp = moreWorkDistanceList// console.log("多地打卡地与当前位置距离数组:" + that.moreWorkDistanceListTemp);alert("多地打卡地与当前位置距离容器:" + that.moreWorkDistanceListTemp)},fail: function (res) {// console.log("求距离发生异常->", res);},complete: function (res) {// console.log("求距离执行完成->", res)}})},

H5 移动端 获取腾讯地图计算两经纬度的实际距离(可批量)_多地打卡相关推荐

  1. 小程序 获取腾讯地图计算两经纬度的实际距离(可批量)_多地打卡

    文章目录 一.小程序 1. 安装vue-jsonp 2. 引入腾讯sdk 3. 实例化 4. 二点求距离 5. 多点求距离 文档地址: https://lbs.qq.com/service/webSe ...

  2. uni-app获取腾讯地图计算两经纬度的实际距离(可批量)

    地址 https://lbs.qq.com/service/webService/webServiceGuide/webServiceDistance getDistance() {uni.reque ...

  3. 经纬度计算距离html,js版谷歌地图计算两经纬度坐标点的距离

    球面上两点间大圆劣弧的距离html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. java版谷歌地图计算两经纬度坐标点的距离

    球面上两点间大圆劣弧的距离 public class GoogleMapHelper {private static double EARTH_RADIUS = 6378.137; //地球半径//将 ...

  5. Java 计算两经纬度间的距离

    之前在开发一个自动售货机设备,在投入生产使用时,使用到了根据经纬度计算出当前位置和目标位置的直线距离,这个距离不是路程距离,只是两坐标的直线距离,仅供参考.实际运用还要具体业务具体实现. 下面是实现两 ...

  6. vue PC 端使用腾讯地图定位

    vue PC 端使用腾讯地图定位 需求:希望网站显示当前城市 腾讯前端定位组件 解决的方法 定义一个文件,加载定位js 在vue页面中使用 需求:希望网站显示当前城市 腾讯前端定位组件 key的申请, ...

  7. 微信端唤起腾讯地图并进行导航

    微信端唤起腾讯地图并进行导航 $('.companyAdress').on('click',function(){    window.location.href= 'http://apis.map. ...

  8. uniapp小程序端使用腾讯地图

    一.获取腾讯地图密钥 1. 找到腾讯地图API 腾讯地图A地址PI 注册并登录后点击开发文档选择微信小程序JavaScript SDK 进入后按照 Hello world! 中的步骤进行 2. 申请密 ...

  9. Android 高德地图根据地址获取经纬度,计算两个坐标的距离

    1.到高德开放平台申请,获取key 高德开放平台:https://lbs.amap.com/ 2.下载高德定位及地址搜索SDK:https://download.csdn.net/download/m ...

最新文章

  1. Permission denied
  2. 汇编语言写c51延时程序,单片机延时程序实例讲解
  3. LeetCode每日打卡 - 4的幂
  4. 如何将彩色网页内容变成灰白的
  5. Linux下mysql备份 恢复
  6. No Javascript on this page
  7. 快照(Snapshot)
  8. tspline工具_Rhino 6 如何使用 T-spline?
  9. shader效果————镜子效果
  10. 怎么用计算机算分数加减法,怎么算分数加减法?怎么教给孩子?
  11. 搜狗输入法 android 历史版本,搜狗输入法旧版
  12. android 6.0 power按键深度解析
  13. 关于Java平台无关性你该知道这些
  14. 苹果原装转接头不能连html,转载 苹果官方告诉你如何识别真假数据线转接器
  15. 选择勤哲Excel服务器做企业管理系统ERP的经验之谈
  16. 在IE8中使用建行企业网银的解决方法
  17. 十年风雨,一个普通程序员的成长之路(五) 成长:得到与教训
  18. unity中使用AO贴图和自发光emission的简单应用
  19. Java Web学习(2):静态网页与动态网页
  20. 因为一首歌,想念一个人?

热门文章

  1. 优秀!读博期间一作发10篇1区SCI,他坦言自己也曾走过弯路
  2. 古人把月球叫做广寒宫,古人是怎么知道月球上很冷的?一起来看看
  3. 使用java实现面向对象编程第二章_java面向对象编程——第二章 java基础语法
  4. pdo oracle返回参数游标,PDOStatement::closeCursor
  5. 网络流之最大流算法(EdmondsKarp)
  6. spark 2.2 读取 Hadoop3.0 数据异常 org.apache.hadoop.hdfs.web.HftpFileSystem cannot access its superinterfa
  7. 阿里云数据库开源发布:PolarDB三节点高可用的功能特性和关键技术
  8. 云上应用系统数据存储架构演进
  9. 微服务+异步工作流+ Serverless,Netflix 决定弃用稳定运行 7 年的旧平台
  10. 厂商 push 不通排查指南