知識
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價值,我們在追求其視覺表現(xiàn)的同時,更側重于功能的便捷,營銷的便利,運營的高效,讓網(wǎng)站成為營銷工具,讓軟件能切實提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序為后期升級提供便捷的支持!
小程序里顯示附近的人,云開發(fā)數(shù)據(jù)庫實現(xiàn)附近的人,按照位置遠近排序,附近多少公里內(nèi) ...
發(fā)表時間:2022-7-26
發(fā)布人:葵宇科技
瀏覽次數(shù):37
最近好多同學問石頭哥附近的人如何實現(xiàn)。今天呢,就借助這篇文章,給大家做一個系統(tǒng)的解答。
老規(guī)矩,先看效果圖
接下來就教大家如何實現(xiàn)附近的位置。
一,創(chuàng)建數(shù)據(jù)
首先我們查詢附近的人的時候,需要先有附近人的位置,也就是經(jīng)緯度。這里我以幾個城市的經(jīng)緯度為例。
這里經(jīng)緯度查到后,我們需要把這些位置信息存到數(shù)據(jù)庫里。
1,注意存位置時必須是Point類型
如我添加的北京的位置如下
2,批量添加(選看)
如果感覺一個添加比較麻煩的話,可以先添加一條,然后導出為json,自己在json里批量編輯。
二,查找附近的人
我們查找附近的人,肯定是想按照排序由近到遠的顯示附近的人在地圖上,所以這里我們就要用到geoNear做聚合查詢。
geonear查詢有兩種方式,建議大家用Aggregate.geoNear
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/aggregate/Aggregate.geoNear.html
用這個的主要好處是,我們可以拿到附近人離自己的距離
三,獲取當前的位置
我們要做附近的人肯定要先獲取自己的位置,獲取自己的位置就用wx.getLocation即可,對應文檔如下
https://developers.weixin.qq.com/miniprogram/dev/api/location/wx.getLocation.html
這個使用之前必須要在app.json里注冊權限,如果不注冊權限,就會報如下提示

四,獲取附近人的經(jīng)緯度
代碼其實很簡單,如下
五,在地圖上顯示附近的人
既然位置都已經(jīng)查詢到了,我們就可以在地圖上顯示了,地圖上顯示用到了map組件的markers
wxml代碼
<map markers="{{markers}}" show-location scale="4"
style="height: 100vh;" />
js代碼
Page({
data: {
markers: []
},
onLoad() {
wx.getLocation({ //1,獲取自己的位置
type: 'wgs84',
success: res => {
const latitude = res.latitude
const longitude = res.longitude
console.log('當前在杭州的經(jīng)緯度', res.longitude, res.latitude)
//2,查找附近的人
let markers = []
const db = wx.cloud.database()
const $ = db.command.aggregate
db.collection('location').aggregate()
.geoNear({
distanceField: 'juli', // 與給定點的距離
spherical: true,
near: db.Geo.Point(longitude, latitude), //當前自己的位置
}).end()
.then(res => {
console.log('位置', res)
res.list.forEach(item => {
markers.push({
longitude: item.location.coordinates[0],
latitude: item.location.coordinates[1]
})
})
// 地圖上的標記點
this.setData({
markers
})
})
}
})
}
})
好了,到這里就帶大家完整的實現(xiàn)了地圖上顯示附近人的功能了。如果覺得石頭哥文章還不錯,歡迎關注點贊。
相關案例查看更多
相關閱讀
- 云南網(wǎng)站建設價格
- 網(wǎng)站建設需要多少錢
- 報廢車回收管理系統(tǒng)
- 網(wǎng)站小程序
- 昆明小程序設計
- web服務
- 云南網(wǎng)站建設制作
- 人口普查小程序
- 云南建設廳網(wǎng)站
- 云南花農(nóng)小程序
- 云南小程序開發(fā)費用
- 開發(fā)微信小程序
- 云南軟件設計
- painter
- 小程序被攻擊
- 小程序退款
- 快排推廣
- 小程序用戶登錄
- 云南小程序制作
- 云南建設廳官方網(wǎng)站
- 云南做百度小程序的公司
- 云南小程序哪家好
- 網(wǎng)絡公司報價
- 報廢車管理系統(tǒng)
- 網(wǎng)站建設電話
- 昆明軟件定制公司
- 云南省住房建設廳網(wǎng)站
- 怎么做網(wǎng)站
- typescript
- 云南網(wǎng)站建設案例