This commit is contained in:
魏啾 2024-08-03 14:12:59 +08:00
parent b9328d0a1c
commit 529a43903c
2 changed files with 1932 additions and 14 deletions

File diff suppressed because it is too large Load Diff

View File

@ -93,7 +93,7 @@
:scroll-into-view="leftIntoView" :scroll-with-animation="false">
<view class="item" v-for="(item,index) in shopProductList.productInfo" :key="index"
:class="{ 'active':index==leftIndex }" :id="'left-'+index" :data-index="index"
@tap="leftTap">{{item.name}}</view>
@click="leftTap(index)">{{item.name}}</view>
<view class="items"></view>
</scroll-view>
</view>
@ -517,18 +517,18 @@
* @param {Object} b
*/
shopAdd(item, index, index1, a, b) {
if ( a == "+" ){
if ( this.skuNumber < this.skuSuit) {
this.amountcartNumber = this.amountcartNumber + (item.suit==0?1:item.suit);
}else {
if (a == "+") {
if (this.skuNumber < this.skuSuit) {
this.amountcartNumber = this.amountcartNumber + (item.suit == 0 ? 1 : item.suit);
} else {
this.amountcartNumber++;
}
} else {
if (this.amountcartNumber > 0) {
console.log(item)
if ( this.skuNumber < this.skuSuit) {
this.amountcartNumber = this.amountcartNumber - (item.suit==0?1:item.suit);
if (this.skuNumber < this.skuSuit) {
this.amountcartNumber = this.amountcartNumber - (item.suit == 0 ? 1 : item.suit);
} else {
this.amountcartNumber = this.amountcartNumber - 1;
}
@ -851,7 +851,7 @@
/* 获取最后一项的高度,设置填充高度。判断和填充时做了 +-20 的操作,是为了滚动时更好的定位 */
let last = res[res.length - 1].height;
if (last - 20 < this.scrollHeight) {
this.fillHeight = this.scrollHeight - last + 20; //
// this.fillHeight = this.scrollHeight - last + 20; //
// this.fillHeight = 200;
}
});
@ -876,18 +876,37 @@
break;
}
}
const calculateDeltas = (arr) => {
return arr.map((item, index, array) => {
if (index === 0) {
//
return array[index + 1] - item;
} else if (index === array.length - 1) {
//
return item - array[index - 1];
} else {
//
return array[index + 1] - item || item - array[index - 1];
}
});
};
//
const deltas = calculateDeltas(this.topArr);
console.log(deltas);
this.leftIndex = (index < 0 ? 0 : index);
}
},
/* 左侧导航点击 */
leftTap(e) {
leftTap(index) {
let HeighTdata = null
if (this.opacity) {
HeighTdata = this.HeighT
HeighTdata = this.HeighT //
} else {
HeighTdata = this.HeighT * 2
HeighTdata = this.HeighT * 2 //
}
console.log(this.scrollTopSize + HeighTdata, 11)
try {
uni.pageScrollTo({
scrollTop: this.scrollTopSize + HeighTdata, // nav+
@ -897,9 +916,9 @@
//TODO handle the exception
}
setTimeout(() => {
let index = e.currentTarget.dataset.index;
this.scrollInto = `item-${index}`;
}, 300)
this.leftIndex = (index < 0 ? 0 : index);
}, 100)
}
}
}