# geolocation **Repository Path**: xiaoshen2017/geolocation ## Basic Information - **Project Name**: geolocation - **Description**: 腾讯地图前端定位组件的二次封装 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-02-19 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # geolocation - 前端定位模块 前端定位模块是对前端定位组件的二次封装,详细文档可参考[腾讯地图开放平台前端定位组件](http://lbs.qq.com/tool/component-geolocation.html)。本模块提供了简单易用的定位接口,帮助业务层获的用户的位置信息(需要用户授权),解决了纯 HTML5 Geolocation 定位能力弱、成功率低的问题,降低了开发成本,提升了定位准确度。 ##调用方式 通过引入 js 的方式调用前端定位模块,定位模块在加载完后会自动开启异步定位,定位所需的耗时不固定,跟用户实际的客户端环境有关。正常情况下在1-3s,网络较差时需要时间较长。 ###代码地址 js引入地址:[http://3gimg.qq.com/lightmap/components/geolocation/geolocation.min.js](http://3gimg.qq.com/lightmap/components/geolocation/geolocation.min.js) github地址:[https://github.com/Hapety/geolocation](https://github.com/Hapety/geolocation) ###调用参数 调用前端定位函数之前必须创建 qq.maps.Geolocation 对象,构造函数的参数如下:
参数名 必填 参数说明 示例
key 开发密钥(key) key=OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77
referer 调用来源,一般为您的应用名称,为了保障对您的服务,请务必填写! referer=myapp
###定位函数 前端定位模块一共封装了四个函数,这些函数包括: 1、getLocation(sucCallback, errCallback, [options: {timeout: number, failTipFlag: boolean}]) 获取当前所在地理位置,调用一次即重新定位一次,定位数据比较精确。 sucCallback为定位成功回调函数,必填; errCallback为定位失败回调函数,选填,如果不填,请设为null; options为定位选项,选填,可以通过timeout参数设置定位的超时时间,默认值为10s,可以通过failTipFlag参数设置是否提示错误(暂未支持)。 2、getIpLocation(sucCallback, [errCallback]) 立即获取当前所在地理位置,适用于非精确定位场景,是IP定位,城市级别。 sucCallback为定位成功回调函数,必填; errCallback为定位失败回调函数,选填。 3、watchPosition(sucCallback) 监听位置信息的改变,类似HTML5 Geolocation的watchPosition。 sucCallback为定位成功回调函数,必填。 4、clearWatch() 清除监听,类似HTML5 Geolocation的clearWatch。 ##定位成功时返回的结果 { "adcode": "440305", // 行政区ID,六位数字, 前两位是省,中间是市,后面两位是区 "nation": "中国", "province": "广东省", "city": "深圳市", "district": "南山区", "addr": "南山区深圳大学上文山湖附近", "lat": 22.530001, // 火星坐标(gcj02),腾讯、Google、高德通用 "lng": 113.935364, "accuracy": 62 // 误差范围,以米为单位 } ##预览 ![前端定位组件预览](http://3gimg.qq.com/lightmap/components/geolocation/cdn-geolocation-barcode.png) ##完整的调用示例 在该示例中,前端定位模块定位成功后,会将json格式的定位数据回传给定位成功回调函数,将定位信息打印出来。 前端定位模块

点击下面的按钮,获得对应信息: