31 lines
706 B
JavaScript
31 lines
706 B
JavaScript
export default {
|
|
getLocation() {
|
|
return new Promise((resolve, reject) => {
|
|
if (navigator.geolocation) {
|
|
navigator.geolocation.getCurrentPosition(
|
|
(pos) => {
|
|
const lng = pos.coords.longitude
|
|
const lat = pos.coords.latitude
|
|
uni.setStorageSync('lng', lng)
|
|
uni.setStorageSync('lat', lat)
|
|
resolve({ lng, lat })
|
|
},
|
|
(err) => {
|
|
console.log('定位失败:', err.message)
|
|
reject(err)
|
|
},
|
|
{ timeout: 10000, enableHighAccuracy: false }
|
|
)
|
|
} else {
|
|
reject(new Error('浏览器不支持定位'))
|
|
}
|
|
})
|
|
},
|
|
getCachedLocation() {
|
|
return {
|
|
lng: uni.getStorageSync('lng') || '',
|
|
lat: uni.getStorageSync('lat') || ''
|
|
}
|
|
}
|
|
}
|