邓洁 : 提示定位框

This commit is contained in:
邓洁
2023-11-20 21:33:14 +08:00
parent 75ce1ab591
commit 60c235f503
2 changed files with 126 additions and 1 deletions

View File

@@ -19,6 +19,7 @@
</template>
<script>
import QQMapWX from "@/utils/qqmap-wx-jssdk.min.js"
export default {
name: "inputAndSwiper",
props: {
@@ -46,8 +47,103 @@
options: {
styleIsolation: 'shared', // 解除样式隔离
},
created() {},
onShow() {
if (this.type !== '0') {
this.open()
}
},
methods: {
open() {
if (!uni.getStorageSync('city') && !uni.getStorageSync('district')) {
uni.getSystemInfo({
success: (res) => {
if (!res.locationEnabled || !res.locationAuthorized) {
uni.showModal({
content: '检测到您没打开手机系统定位权限,请确保手机系统定位已开启',
confirmText: "确认",
showCancel: false,
success: (res) => {
if (res.confirm) {
this.getUserLocation();
} else {
console.log('取消');
return false;
}
}
})
} else {
this.getUserLocation()
}
}
})
}
},
getUserLocation() {
var that = this
let qqmapsdk = new QQMapWX({
key: that.$api.key
});
uni.getFuzzyLocation({
type: 'wgs84',
success(res) {
console.log('res.latitude', res.latitude);
console.log('res.longitude', res.longitude);
uni.setStorageSync('latitude', res.latitude);
uni.setStorageSync('longitude', res.longitude);
qqmapsdk.reverseGeocoder({
location: {
latitude: res.latitude,
longitude: res.longitude
},
success: (re) => {
console.log("解析地址成功", re);
console.log(re.result.ad_info.city);
console.log(re.result.ad_info.district);
let city = re.result.ad_info.city
let district = re.result.ad_info.district
console.log('city-code', re.result.ad_info.city_code.substring(3));
uni.setStorageSync('city_code', re.result.ad_info.city_code.substring(3));
uni.setStorageSync('city', city.slice(0, 2));
uni.setStorageSync('district', district);
that.getRegionList()
// that.position = city.slice(0, 2) + district.slice(0, 2)
},
fail: (re) => {
console.log(re, '失败信息');
}
})
},
fail(err) {
console.log("获取经纬度失败", err);
uni.getSystemInfo({
success: (res) => {
if (!res.locationEnabled || !res.locationAuthorized) {
uni.showModal({
content: '检测到您没打开手机系统定位权限,请确保手机系统定位已开启',
confirmText: "确认",
showCancel: false,
success: (res) => {
if (res.confirm) {
// uni.openSetting({
// success: (res) => {
// console.log(res);
that.getUserLocation();
// }
// })
} else {
console.log('取消');
return false;
}
}
})
} else {
that.getUserLocation()
}
}
})
},
});
},
//点击轮播图
handleSwiperList(currentNum, bannerURL) {
const item = bannerURL[currentNum]