登录 请求顺序 小程序更新提示

This commit is contained in:
魏啾
2024-08-08 18:18:22 +08:00
parent c00e084a09
commit 8ca9a73775
3 changed files with 104 additions and 84 deletions

41
App.vue
View File

@@ -1,5 +1,4 @@
<template>
<button v-show="false" open-type="getPhoneNumber" @getphonenumber="userlogin"> </button>
</template>
<script>
export default {
@@ -8,23 +7,47 @@
uni.cache.set('menuInfo', uni.getMenuButtonBoundingClientRect());
// #endif
uni.cache.set('NAME', '零点八零');
this.userlogin()
},
onLoad() {},
onShow: function() {
this.$store.dispatch("HeightActions"); //获取随时获取页面的高度
// #ifdef MP-WEIXIN
// 当向小程序后台请求完新版本信息会进行回调。res: {hasUpdate: true, version: 1.0.0}
const updateManager = uni.getUpdateManager();
updateManager.onCheckForUpdate(function(res) {
if (res.hasUpdate) { // 有更新
uni.showLoading({
title: '更新中...'
}); // 开始下载前显示Loading
}
});
// 当新版本下载完成,会进行回调
updateManager.onUpdateReady(function() {
uni.hideLoading(); // 关闭 Loading
uni.showModal({ // 弹确认框(强制更新)
title: '更新提示',
content: '更新完毕,是否重启?',
success: function(res) {
if (res.confirm) {
updateManager.applyUpdate(); // 强制小程序重启并使用新版本。
}
}
})
});
// 当新版本下载失败,会进行回调
updateManager.onUpdateFailed(function() {
uni.hideLoading(); // 关闭 Loading
uni.showToast({
title: '更新失败,稍后再试...',
icon: "error"
});
});
// #endif
},
onHide: function() {
// console.log('App Hide');
},
methods: {
userlogin() {
if (!uni.cache.get('token')) {
this.$store.dispatch("loginEvent"); //获取shapid
}
}
}
};
</script>

View File

@@ -104,19 +104,18 @@ async function request(options) {
if (res.code != 0) {
console.log(options)
if (res.code == -4) {
// uni.showToast({
// title: '',
// // title: res.message || res.msg,
// icon: "none",
// success: () => {
// setTimeout(res => {
// store.dispatch("loginEvent"); //获取shapid
// }, 1000)
// }
// })
setTimeout(res => {
store.dispatch("loginEvent"); //获取shapid
}, 1000)
uni.showToast({
title: res.message || res.msg,
icon: "none",
success: () => {
// setTimeout(res => {
// store.dispatch("loginEvent"); //获取shapid
// }, 1000)
}
})
// setTimeout(res => {
// store.dispatch("loginEvent"); //获取shapid
// }, 1000)
} else if (res.code == 482) {
let nowTime = new Date() / 1000 | 0
let offset = parseInt(res.data.message) - parseInt(nowTime);

View File

@@ -110,10 +110,11 @@
<!-- ?x-oss-process=image/resize,m_lfit,w_200,h_200,limit_90 -->
<view class="goods" @click="clickspecifications(item1,index,index1)"
v-for="(item1,index1) in item.products" :key="index1">
<image class="goodsImg" v-if="item1.coverImg!=null" :lazy-load="true"
<image class="goodsImg" v-if="item1.coverImg!=null" :lazy-load="true"
@load="imageLoaded(item1,index,index1)"
:src="`${item1.coverImg}${!item1.imgLoad?'?x-oss-process=image/resize,m_lfit,w_300,h_300':''}`" mode="aspectFill"></image>
<!-- <image class="goodsImg" v-if="item1.coverImg!=null" :lazy-load="true"
:src="`${item1.coverImg}${!item1.imgLoad?'?x-oss-process=image/resize,m_lfit,w_300,h_300':''}`"
mode="aspectFill"></image>
<!-- <image class="goodsImg" v-if="item1.coverImg!=null" :lazy-load="true"
:src="`${item1.coverImg}`" mode="aspectFill"></image> -->
<image class="goodsImg" src="@/static/1.gif" mode="" v-else :lazy-load="true"></image>
<view v-if="item.name=='热销'" class="topSort" :class="'c'+(index1+1)">TOP{{index1+1}}
@@ -277,7 +278,7 @@
<view class="shop_sku_box_name">
{{item.name}}
</view>
<view class="flex-start" >
<view class="flex-start">
<view class="shop_sku_box_item" v-for="(item1,index1) in item.children" :key="index1"
@click="morloe(item1,index,index1,item)" :style="{color:!item1.isGrounding?'#999':''}"
:class=" item.start == index1 ?'shop_sku_box_item_selected':''">
@@ -389,15 +390,6 @@
this.$store.getters.is_BarHeight.customBar)
}
},
onReady() {
// setTimeout(() => {
// uni.getSystemInfo({
// success: (data) => {
// this.scrollHeight = data.windowHeight
// }
// })
// }, 100);
},
onLoad(e) {
if (e.q) {
this.tableCode = this.getQueryString(decodeURIComponent(e.q), 'code')
@@ -442,7 +434,7 @@
.miniAppOpenId)
uni.cache.set('userInfo', res.data.userInfo);
uni.$on('message', this.getMessage)
_this.getLocation()
}
},
@@ -476,36 +468,40 @@
"type": "connect",
})
},
/**
* 获取定位
*/
getLocation () {
uni.getLocation({
type: 'wgs84',
success: async (res) => {
let successres = await this.api.geocodelocation({
lng: res.longitude,
lat: res.latitude,
})
if (successres.code == 0) {
let datastorage = {
country: successres.data.addressComponent.country, // "中国"
province: successres.data.addressComponent.province, //province: "陕西省"
address: successres.data.addressComponent.city, //district: "西安市"
district: successres.data.addressComponent.district, //district: "未央区"
getLocation() {
try {
uni.getLocation({
type: 'wgs84',
success: async (res) => {
let successres = await this.api.geocodelocation({
lng: res.longitude,
lat: res.latitude,
})
if (successres.code == 0) {
let datastorage = {
country: successres.data.addressComponent.country, // "中国"
province: successres.data.addressComponent.province, //province: "陕西省"
address: successres.data.addressComponent.city, //district: "西安市"
district: successres.data.addressComponent.district, //district: "未央区"
lng: res.longitude,
lat: res.latitude,
}
uni.cache.set('getLocationstorage', datastorage);
this.productqueryShop();
}
uni.cache.set('getLocationstorage', datastorage);
},
fail: async (err) => {
this.productqueryShop();
}
},
fail: async (err) => {
console.log(err, '获取错误') //测试用于app
this.productqueryShop();
}
});
});
} catch (e) {
this.productqueryShop();
//TODO handle the exception
}
},
/**
@@ -514,8 +510,10 @@
async productqueryShop() {
let res = await this.api.productqueryShop({
code: uni.cache.get('tableCode'),
lng: uni.cache.get('getLocationstorage').lng?uni.cache.get('getLocationstorage').lng:'',
lat: uni.cache.get('getLocationstorage').lat? uni.cache.get('getLocationstorage').lat:'',
lng: uni.cache.get('getLocationstorage').lng ? uni.cache.get('getLocationstorage').lng :
'',
lat: uni.cache.get('getLocationstorage').lat ? uni.cache.get('getLocationstorage').lat :
'',
})
if (res.code == 0) {
uni.cache.set('shopUser', res.data.storeInfo.id)
@@ -529,18 +527,18 @@
}
},
/**
* 图片加载
*/
imageLoaded (item,index,index1) {
imageLoaded(item, index, index1) {
console.log(index)
console.log(index1)
console.log(this.shopProductList.productInfo[index])
this.shopProductList.productInfo[index].products[index1]['imgLoad'] = true;
// e.currentTarget.src
},
/**
* 商品数量增加/减少
* @param {Object} item
@@ -735,7 +733,7 @@
start: -1,
children: []
}
item.value.split(",").forEach((v,e)=>{
item.value.split(",").forEach((v, e) => {
res.children.push({
name: v,
isGrounding: false
@@ -743,7 +741,7 @@
})
return res
})
//初始化第一列规格可编辑
let filteredJson;
let isSkuidname = [];
@@ -756,14 +754,14 @@
console.log(filteredJson);
for (let i = 0; i < filteredJson.length; i++) {
console.log(filteredJson[i].isGrounding)
if ( filteredJson[i].isGrounding ) {
if (filteredJson[i].isGrounding) {
this.specifications.tagSnap[0].children[o].isGrounding = true
break; // 终止循环
}
}
}
this.skuBtnText = `您还没选择${this.specifications.tagSnap[0].name}`
// this.specifications.tagSnap.forEach((val, index, arr) => { //初始化skuidname的数据 选择第一个
@@ -787,7 +785,7 @@
* @param {Object} item
*/
async morloe(e, index, index1, item) {
if ( !e.isGrounding ) {
if (!e.isGrounding) {
return;
}
@@ -801,18 +799,18 @@
}
this.skuidname = [];
this.specifications.tagSnap.forEach((val, i, arr) => { //初始化skuidname的数据 选择第一个
if ( i > index ) {
val.children.forEach(( v1,e1)=>{
if (i > index) {
val.children.forEach((v1, e1) => {
v1.isGrounding = false;
})
val.start = -1;
}
if ( val.start >= 0 ) {
if (val.start >= 0) {
this.skuidname.push(val.children[val.start].name)
}
})
// this.skuidname.splice(index, 1, e.info); //替换skuidname的数据
for (let i = 0; i < this.specifications.tagSnap.length; i++) {
if (this.specifications.tagSnap[i].start < 0) {
this.isSpec = false;
@@ -820,36 +818,36 @@
break; // 终止循环
}
}
let filteredJson;
let isSkuidname = [];
//提前下一列规格循环,查看是否有下架规格
if ( this.specifications.tagSnap[index+1] ) {
for (let o = 0; o < this.specifications.tagSnap[index+1].children.length; o++) {
if (this.specifications.tagSnap[index + 1]) {
for (let o = 0; o < this.specifications.tagSnap[index + 1].children.length; o++) {
isSkuidname = JSON.parse(JSON.stringify(this.skuidname));
isSkuidname.push(this.specifications.tagSnap[index+1].children[o].name)
isSkuidname.push(this.specifications.tagSnap[index + 1].children[o].name)
//筛选符合条件的规格列表
console.log(isSkuidname);
filteredJson = this.querySpecList.filter(obj => obj.specSnap.indexOf(isSkuidname) == 0);
console.log(filteredJson);
for (let i = 0; i < filteredJson.length; i++) {
console.log(filteredJson[i].isGrounding)
if ( filteredJson[i].isGrounding ) {
this.specifications.tagSnap[index+1].children[o].isGrounding = true
if (filteredJson[i].isGrounding) {
this.specifications.tagSnap[index + 1].children[o].isGrounding = true
break; // 终止循环
}
}
}
}
// res.data.forEach((v,e)=>{
// // this.$set(this.specifications.tagSnap[e], 'children', v.value)
// })
console.log(this.specifications.tagSnap)
this.$forceUpdate();
this.hodgepodge(item, 2)
},