细节修改

version/0412
fanfan 11 months ago
parent 70be2ae2ab
commit fa68b3fb05
  1. 44
      pages/category/index.vue
  2. 11
      pages/serve/install.vue

@ -9,21 +9,24 @@
<view class="u-menu-wrap">
<scroll-view scroll-y scroll-with-animation class="u-tab-view menu-scroll-view" :scroll-top="scrollTop"
:scroll-into-view="itemId">
<view v-for="(item,index) in tabbar" :key="index" class="u-tab-item" :class="[current == index ? 'u-tab-item-active' : '']"
@tap.stop="swichMenu(index)">
<view v-for="(item,index) in tabbar" :key="index" class="u-tab-item"
:class="[current == index ? 'u-tab-item-active' : '']" @tap.stop="swichMenu(index)">
<text class="u-line-1">{{item.name}}</text>
</view>
</scroll-view>
<scroll-view :scroll-top="scrollRightTop" scroll-y scroll-with-animation class="right-box" @scroll="rightScroll">
<scroll-view :scroll-top="scrollRightTop" scroll-y scroll-with-animation class="right-box"
@scroll="rightScroll">
<view class="page-view">
<view class="class-item" :id="'item' + index" v-for="(item , index) in tabbar" :key="index">
<view class="item-box" v-for="(item1, index1) in item.children" :key="index1" >
<view class="item-box" v-for="(item1, index1) in item.children" :key="index1">
<view class="item-title">
<text>{{item1.name}}</text>
</view>
<view class="item-container">
<view class="thumb-box" @click="goodsDetail(item2)" v-for="(item2, index2) in item1.children" :key="index2">
<image class="item-menu-image" :src="item2.image?item2.image.external_url:''" mode=""></image>
<view class="thumb-box" @click="goodsDetail(item2)"
v-for="(item2, index2) in item1.children" :key="index2">
<image class="item-menu-image" :src="item2.image?item2.image.external_url:''"
mode=""></image>
<view class="item-menu-name">{{item2.name}}</view>
</view>
</view>
@ -75,16 +78,18 @@
},
//
async swichMenu(index) {
if(this.arr.length == 0) {
console.log(index)
if (this.arr.length == 0) {
await this.getMenuItemTop();
}
if (index == this.current) return;
this.scrollRightTop = this.oldScrollTop;
this.$nextTick(function(){
this.scrollRightTop = this.arr[index];
this.$nextTick(function() {
this.current = index;
this.scrollRightTop = this.arr[index];
this.leftMenuStatus(index);
})
console.log(index, this.current)
},
getGoodsTypeList() {
const that = this;
@ -143,7 +148,7 @@
await this.getElRect('menu-scroll-view', 'menuHeight');
await this.getElRect('u-tab-item', 'menuItemHeight');
}
this.current = index;
// this.current = index+1;
// item
this.scrollTop = index * this.menuItemHeight + this.menuItemHeight / 2 - this.menuHeight / 2;
@ -154,11 +159,11 @@
let selectorQuery = uni.createSelectorQuery();
selectorQuery.selectAll('.class-item').boundingClientRect((rects) => {
// rects[](selectAll)
if(!rects.length) {
if (!rects.length) {
setTimeout(() => {
this.getMenuItemTop();
}, 10);
return ;
return;
}
rects.forEach((rect) => {
// rects[0].top()
@ -171,11 +176,11 @@
//
async rightScroll(e) {
this.oldScrollTop = e.detail.scrollTop;
if(this.arr.length == 0) {
if (this.arr.length == 0) {
await this.getMenuItemTop();
}
if(this.timer) return ;
if(!this.menuHeight) {
if (this.timer) return;
if (!this.menuHeight) {
await this.getElRect('menu-scroll-view', 'menuHeight');
}
setTimeout(() => { //
@ -188,7 +193,7 @@
// height2
if (!height2 || scrollHeight >= height1 && scrollHeight < height2) {
this.leftMenuStatus(i);
return ;
return;
}
}
}, 10)
@ -287,12 +292,15 @@
.class-item:last-child {
min-height: 100vh;
}
.item-box{
.item-box {
margin-top: 30rpx;
&:first-child{
&:first-child {
margin-top: 0;
}
}
.item-title {
font-size: 28rpx;
color: $u-main-color;

@ -49,8 +49,15 @@
},
methods: {
onLookCord(url) {
this.showQRCodePopup = true
this.qrcode = createQrCodeImg(url, { 'size': 500 });
uni.previewImage({
urls: [url], //httpurl
current: '', // http
success: function(res) {},
fail: function(res) {},
complete: function(res) {},
})
// this.showQRCodePopup = true
// this.qrcode = createQrCodeImg(url, { 'size': 500 });
},
/**
* 获取列表

Loading…
Cancel
Save