這篇文章主要介紹了關(guān)于微信小程序之獲取當(dāng)前位置經(jīng)緯度以及地圖顯示,有著一定的參考價(jià)值,現(xiàn)在分享給大家,有需要的朋友可以參考一下
最近剛開始接觸微信小程序,在弄懂其結(jié)構(gòu)以及相關(guān)接口之后,準(zhǔn)備著手實(shí)現(xiàn)一個(gè)小程序,功能包括–獲取用戶當(dāng)前位置的經(jīng)緯度,在地圖上查看位置,通過地圖獲取不同位置的經(jīng)緯度。
最近剛開始接觸微信小程序,在弄懂其結(jié)構(gòu)以及相關(guān)接口之后,準(zhǔn)備著手實(shí)現(xiàn)一個(gè)小程序,功能包括–獲取用戶當(dāng)前位置的經(jīng)緯度,在地圖上查看位置,通過地圖獲取不同位置的經(jīng)緯度。
微信小程序的主體部分包括:
新增頁面需要在app.json進(jìn)行配置:
"pages":[ "pages/index/index", "pages/location/location", "pages/logs/logs" ]
通過在視圖層調(diào)用bindtap與邏輯層中的方法匹配–實(shí)現(xiàn)頁面跳轉(zhuǎn):
視圖層
<view class="location" bindtap="locationViewTap"> <button>獲取用戶當(dāng)前位置</button> </view>
邏輯層
locationViewTap: function(){ wx.navigateTo({ url: '../location/location' }) }
通過在視圖層調(diào)用bindtap與邏輯層中的方法匹配–實(shí)現(xiàn)方法調(diào)用:
視圖層
<button bindtap="mapViewTap" style="margin:10px">查看地圖</button> <button bindtap="chooseMapViewTap" style="margin:10px">選擇位置</button>
邏輯層
mapViewTap:function(){ wx.getLocation({ type: 'gcj02', //返回可以用于wx.openLocation的經(jīng)緯度 success: function(res) { console.log(res) wx.openLocation({ latitude: res.latitude, longitude: res.longitude, scale: 28 }) } }) }
有關(guān)地圖位置的三個(gè)接口:
(1) wx.getLocation(OBJECT) 獲取當(dāng)前的地理位置、速度
success返回參數(shù):
latitude | 緯度,浮點(diǎn)數(shù),范圍為-90~90,負(fù)數(shù)表示南緯 |
longitude | 經(jīng)度,浮點(diǎn)數(shù),范圍為-180~180,負(fù)數(shù)表示西經(jīng) |
speed | 速度,浮點(diǎn)數(shù),單位m/s |
accuracy | 位置的精確度 |
(2) wx.openLocation(OBJECT) 使用微信內(nèi)置地圖查看位置
OBJECT參數(shù)說明:
參數(shù) | 類型 | 必填 | 說明 |
---|---|---|---|
latitude | Float | 是 | 緯度,范圍為-90~90,負(fù)數(shù)表示南緯 |
longitude | Float | 是 | 經(jīng)度,范圍為-180~180,負(fù)數(shù)表示西經(jīng) |
scale | INT | 否 | 縮放比例,范圍5~18,默認(rèn)為18 |
name | String | 否 | 位置名 |
address | String | 否 | 地址的詳細(xì)說明 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù) |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù) |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行) |
(3) wx.chooseLocation(OBJECT) 打開地圖選擇位置
success返回參數(shù):
name | 位置名稱 |
address | 詳細(xì)地址 |
latitude | 緯度,浮點(diǎn)數(shù),范圍為-90~90,負(fù)數(shù)表示南緯 |
longitude | 經(jīng)度,浮點(diǎn)數(shù),范圍為-180~180,負(fù)數(shù)表示西經(jīng) |
實(shí)現(xiàn)效果
利用getLocation獲取當(dāng)前位置的經(jīng)緯度坐標(biāo),openLocation打開微信內(nèi)置地圖查看
利用chooseLocation選取位置,并將位置信息的經(jīng)緯度實(shí)時(shí)響應(yīng)顯示
注意事項(xiàng):
(1) 利用getLocation()獲得的地圖參數(shù)信息只有兩個(gè)
利用chooselocation返回的參數(shù)如下:
(2) this.setData修改json里面的值
邏輯層中的json數(shù)據(jù)可以通過WXML文件{{json}}顯示出來:
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,更多相關(guān)內(nèi)容請關(guān)注PHP中文網(wǎng)!
相關(guān)推薦:
以上就是微信小程序之獲取當(dāng)前位置經(jīng)緯度以及地圖顯示的詳細(xì)內(nèi)容,更多請關(guān)注有卡有網(wǎng)。