This commit is contained in:
魏啾
2024-08-06 14:17:53 +08:00
parent 1133bda264
commit 0fcb19cbdc

View File

@@ -109,9 +109,10 @@
</view>
<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"
:src="`${item1.coverImg}?x-oss-process=image/resize,m_lfit,w_150,h_150`" mode="aspectFill"></image>
<!-- <image class="goodsImg" v-if="item1.coverImg!=null" :lazy-load="true"
<image class="goodsImg" v-if="item1.coverImg!=null" :lazy-load="true"
:src="`${item1.coverImg}?x-oss-process=image/resize,m_lfit,w_150,h_150`"
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}}
@@ -276,9 +277,8 @@
{{item.name}}
</view>
<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':''}"
<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':''">
{{item1.info}}
</view>
@@ -310,7 +310,8 @@
</view>
<view class="addShopping" :class="(amountcartNumber>0&&isSpec)?'active':''"
@click="addShopping(specifications,specifications.indexa,specifications.indexb,'+',specifications.tagSnap == null ? '单规格':'')">
{{skuBtnText}}</view>
{{skuBtnText}}
</view>
</view>
</view>
</u-popup>
@@ -344,8 +345,7 @@
cartLists_count: 0,
shopInfo: {}, //店铺信息
shopProductList: {}, //商品信息
specifications: {
}, // 规格信息
specifications: {}, // 规格信息
socketTicket: null,
amountcartNumber: 0,
isSpec: true,
@@ -356,7 +356,7 @@
cartListsdatashow: false, //是否显示购物车
showCart: false,
lastbottom: '', //元素最低端的距离
scrollxleft: false,
scrollxleft: true,
orderdetailFlag: true,
}
},
@@ -366,6 +366,11 @@
} else {
this.opacity = true
}
// if (e.scrollTop > this.topArr[0]) {
// this.scrollxleft = true
// } else {
// this.scrollxleft = false
// }
this.mainScroll(e)
},
computed: {
@@ -400,7 +405,7 @@
},
onUnload() {
if ( this.socketTicket ) {
if (this.socketTicket) {
this.socketTicket.Close()
uni.$off('message')
}
@@ -678,9 +683,9 @@
this.isSpec = true;
let res = await this.api.productquerySpec({
productId: item1.id, //商品id
querySpecList:[],
querySpecList: [],
})
if( res.code == 0 ){
if (res.code == 0) {
this.specifications.tagSnap = res.data.map((item) => {
console.log(item)
let data = {
@@ -699,7 +704,7 @@
})
}
this.skuBtnText = `您还没选择${this.specifications.tagSnap[0].name}`
// this.specifications.tagSnap.forEach((val, index, arr) => { //初始化skuidname的数据 选择第一个
// console.log(val)
// this.skuidname.push(val.children[0].info)
@@ -722,48 +727,48 @@
*/
async morloe(e, index, index1, item) {
let _this = this;
if ( !e.isGrounding ) {
if (!e.isGrounding) {
return;
}
let querySpecList = [];
this.skuBtnText = "添加到购物车";
this.isSpec = true;
if ( this.specifications.tagSnap[index].start != index1) {
if (this.specifications.tagSnap[index].start != index1) {
this.$set(this.specifications.tagSnap[index], 'start', index1)
} else {
this.$set(this.specifications.tagSnap[index], 'start', -1)
}
_this.skuidname.splice(index, 1, e.info); //替换skuidname的数据
_this.specifications.tagSnap.forEach((v,i)=>{
if ( v.start >= 0 && v.start <= v.children.length) {
_this.specifications.tagSnap.forEach((v, i) => {
if (v.start >= 0 && v.start <= v.children.length) {
querySpecList.push({
name: v.name,
value: v.children[v.start].info
})
}
})
for (let i = 0; i < this.specifications.tagSnap.length; i++) {
if ( this.specifications.tagSnap[i].start < 0) {
if (this.specifications.tagSnap[i].start < 0) {
this.isSpec = false;
this.skuBtnText = `您还没选择${this.specifications.tagSnap[i].name}`
break; // 终止循环
}
}
let res = await _this.api.productquerySpec({
productId: item.id, //商品id
querySpecList: querySpecList,
})
if( res.code == 0 ){
res.data.forEach((v,e)=>{
if (res.code == 0) {
res.data.forEach((v, e) => {
_this.$set(this.specifications.tagSnap[e], 'children', v.value)
// _this.specifications.tagSnap[e].children = v.value
})
}
console.log(_this.specifications.tagSnap)
this.$forceUpdate();
_this.hodgepodge(item, 2)
},
@@ -812,7 +817,7 @@
* 结算直接生成订单
*/
orderdetail() {
if ( !this.orderdetailFlag ) {
if (!this.orderdetailFlag) {
return;
}
this.orderdetailFlag = false;
@@ -965,11 +970,7 @@
let top = e.scrollTop;
let index = 0;
// 判断左边是否可以滑动
if (top + 2 > this.topArr[0]) {
this.scrollxleft = true
} else {
this.scrollxleft = false
}
for (let i = (this.topArr.length - 1); i >= 0; i--) {
/* 在部分安卓设备上因手机逻辑分辨率与rpx单位计算不是整数滚动距离与有误差增加2px来完善该问题 */
if ((top + 2) >= this.topArr[i] - this.HeighT) {