vue 编写H5页面在公众号外部获取手机本地坐标经纬度
生活随笔
收集整理的這篇文章主要介紹了
vue 编写H5页面在公众号外部获取手机本地坐标经纬度
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
?
1、必須先注冊(cè)個(gè)公眾號(hào),且認(rèn)證后去下面這個(gè)地方配置好您的域名這仨地方都得設(shè)置,目前我試了下用域名還是用具體項(xiàng)目所在的文件夾目錄沒(méi)什么明顯差異
?
譬如你是用shuzhiqiang.com或者shuzhiqiang.com/path貌似都差不多,不知道各位小伙伴遇到過(guò)什么差異沒(méi)
2、上代碼
// import wx from "weixin-jsapi"; //這個(gè)快要被廢棄了1.0.0
import wx from "weixin-js-sdk"; //要用微信的屌方法必須要引入這個(gè)玩意兒!!!// 在created(){}里面就要先調(diào)用getWeixinSDK() {this.$sgData.weixin_mp_config({url: encodeURIComponent(location.href.split("#")[0]) //最好不要包含哈希,據(jù)說(shuō)包含"#"的兄弟們都陣亡了~},{success: d => {// ↓↓↓這句話是用來(lái)給馬化騰打個(gè)招呼,告訴小馬哥我要用你的微信內(nèi)置方法了喲,么么噠~↓↓↓wx.config({debug: true, //非調(diào)試模式(如果為true,在手機(jī)端會(huì)彈出alert窗口)appId: d.appId, // 必填,公眾號(hào)的唯一標(biāo)識(shí)timestamp: d.timestamp, // 必填,生成簽名的時(shí)間戳nonceStr: d.nonceStr, // 必填,生成簽名的隨機(jī)串signature: d.signature, // 必填,簽名 jsApiList: ["getLocation","updateAppMessageShareData"] // 必填,需要使用的JS接口列表(如:要使用定位獲取坐標(biāo)、分享好友)});},fail: d => {this.dialog("獲取微信SDK權(quán)限失敗,請(qǐng)點(diǎn)擊右上角‘…’→刷新一下,謝謝配合!");} /*,error:d=> {console.log("報(bào)錯(cuò)了", d);}*/});},// 通過(guò)微信獲取手機(jī)本地坐標(biāo)經(jīng)緯度getLocationByWx(callback) {// ↓↓↓ 這句話才是正兒八經(jīng)開(kāi)始獲取微信經(jīng)緯度坐標(biāo)了 ↓↓↓wx.ready(() => {// config信息驗(yàn)證后會(huì)執(zhí)行ready方法,所有接口調(diào)用都必須在config接口獲得結(jié)果之后,config是一個(gè)客戶端的異步操作,所以如果需要在頁(yè)面加載時(shí)就調(diào)用相關(guān)接口,則須把相關(guān)接口放在ready函數(shù)中調(diào)用來(lái)確保正確執(zhí)行。對(duì)于用戶觸發(fā)時(shí)才調(diào)用的接口,則可以直接調(diào)用,不需要放在ready函數(shù)中。wx.getLocation({type: "wgs84", // 默認(rèn)為wgs84的gps坐標(biāo),如果要返回直接給openLocation用的火星坐標(biāo),可傳入'gcj02'success: d => {var latitude = d.latitude; // 緯度,浮點(diǎn)數(shù),范圍為90 ~ -90var longitude = d.longitude; // 經(jīng)度,浮點(diǎn)數(shù),范圍為180 ~ -180。var speed = d.speed; // 速度,以米/每秒計(jì)var accuracy = d.accuracy; // 位置精度this.errorLocationText =`您目前的地理坐標(biāo)偏差范圍大約是${accuracy}米,您剛剛瞬時(shí)速度為${speed}米/每秒` +(accuracy > 500 ? ",因個(gè)人設(shè)備差異,可能存在較大距離誤差" : "") +(speed > 0? ",可能您剛剛是乘坐汽車(chē)或者自駕,目前獲取的還是您前一刻的坐標(biāo)位置,請(qǐng)稍微等待一會(huì)兒再?lài)L試": "") +"。"; //這句話是為了后面定位失敗做鋪墊用的var zb = latitude + "," + longitude; //拼接“維度,經(jīng)度”callback && callback(zb);},fail: d => {this.dialog("獲取微信坐標(biāo)位置失敗,請(qǐng)點(diǎn)擊右上角‘…’→刷新一下,謝謝配合!");}});});},
總結(jié)
以上是生活随笔為你收集整理的vue 编写H5页面在公众号外部获取手机本地坐标经纬度的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 判断手机是否弹出键盘,改变了手机页面高度
- 下一篇: 【fiveClick】2秒内5连击(五连