溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在微信小程序中如何獲取用戶位置

發布時間:2022-08-04 10:32:33 來源:億速云 閱讀:228 作者:iii 欄目:開發技術

這篇文章主要介紹“在微信小程序中如何獲取用戶位置”,在日常操作中,相信很多人在在微信小程序中如何獲取用戶位置問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”在微信小程序中如何獲取用戶位置”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

wx.getLocation

首先,我們需要來認識一下 wx.getLocation 這個 API 方法,我們先看看 微信官方文檔 中是怎么說的

在微信小程序中如何獲取用戶位置

看我劃紅線的地方就可以了,文檔中明確的表示這個 API 方法就是用來獲取當前的地理位置,那么如何使用呢,往下翻,看看官網中的示例代碼。

在微信小程序中如何獲取用戶位置

看完示例代碼,對于 wx.getLocation 中的 type 和 success 不理解,這倆是干啥的???,繼續看文檔,文檔中寫的很詳細

在微信小程序中如何獲取用戶位置

在微信小程序中如何獲取用戶位置

通過以上信息,得出

  • type:默認值為 wgs84,返回 GPS 坐標

  • success:當調用成功時,會有一個回調函數,那么回調函數返回的參數就可以做一些東西了

我們先在微信小程序中成功調用一下這個 wx.getLocation API 方法,再繼續往下進行。

代碼

將方法調用在組件生命周期中,讓組件一開始就直接調用,因為 type 默認值為 wgs84,所以寫不寫都可以(我懶,就不寫了)

created() {
    // 獲取當前的地理位置
    wx.getLocation({
        success(res) {
            console.log(res)
        }
    })
}

看下控制臺輸出結果

在微信小程序中如何獲取用戶位置

發現輸出結果中的內容和上圖中 success 回調函數的參數一一對應,我們只需要用到 latitudelongitude 緯度和經度這兩個參數,那么怎么通過緯度和經度獲取到具體的地理位置信息呢?

聰明的小伙伴百度一搜相關的工具就出來一大堆,工具很多,比如:經緯度/GPS坐標查詢地圖地址在線工具 ,但是我們是將來碼界的一員啊,我們應該敲代碼實現才對,況且,如果你寫的項目上線之后,你還依賴在線工具去實現這個功能嗎,太不現實了。

但是!我們可以借助大廠的技術服務????,比如:騰訊位置服務 、百度地圖開放平臺 、高德開放平臺

騰訊位置服務

我就給大家介紹如何使用騰訊的位置服務了啊,這些技術服務基本區別不大,也很容易上手。

首先,大家需要去 注冊 一個號,綁定郵箱。

登錄成功進去之后,按照下圖進行操作

在微信小程序中如何獲取用戶位置

接著會彈出如下界面,進行填寫即可

在微信小程序中如何獲取用戶位置

  • Key 名稱很好理解吧,就是相當于咱們寫代碼中的屬性名

  • 描述就不過多介紹了,就相當于咱們寫代碼中的注釋

  • 啟用產品為什么要選擇 WebServiceAPI 呢?因為簡單上手快,至于其他的,小伙伴們可以自己研究一下

  • 剩下的就不過多介紹了吧,字面意思????

注意

這里添加的 key 不要向外透露?。?!這是密鑰,你進入家門的鑰匙,不能隨便給別人!

接著繼續按下圖操作

在微信小程序中如何獲取用戶位置

你會看到如下內容

在微信小程序中如何獲取用戶位置

選擇 逆地址解析(坐標位置描述) 選項,右側內容也明確的表示出此接口用來將經緯度轉換能文字地址信息,具體如何使用,翻到最底部,看示例代碼

在微信小程序中如何獲取用戶位置

你會看到人家請求時攜帶了三個參數, location、get-poi、key ,分別是什么意思呢?往上翻,繼續閱讀文檔

在微信小程序中如何獲取用戶位置

  • location:將咱們用 wx.getLocation 獲取到的經緯度坐標寫在這里,格式為 latitude(緯度),longitude(經度),注意是用逗號分隔

  • get_poi:表示是否返回周邊地點的信息,默認值為 0(不返回),根據需求修改就好了

  • key:就是咱們一開始添加的密鑰

看到這里,我們可以動手實現了

代碼

created() {
    // 獲取當前的經緯度坐標
    wx.getLocation({
        success(res) {
            // 緯度
            const latitude = res.latitude
            // 經度
            const longitude = res.longitude
            // 請求騰訊地圖逆地址解析接口
            wx.request({
                url: `https://apis.map.qq.com/ws/geocoder/v1/?location=${latitude},${longitude}&key=寫你自己添加的密鑰`,
                success(res) {
                    console.log(res)
                }
            })
        }
    })
}

響應結果

在微信小程序中如何獲取用戶位置

最終將地址渲染到頁面即可

在微信小程序中如何獲取用戶位置

到此,關于“在微信小程序中如何獲取用戶位置”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女