|
|
|
@ -7,12 +7,24 @@ |
|
|
|
|
请选择分类 |
|
|
|
|
</view> |
|
|
|
|
<view class="shopItem"> |
|
|
|
|
<view class="shopText" :class="{'active':activeIndex.indexOf(item.category_id) > -1}" |
|
|
|
|
@click="getShop(item,item.category_id)" v-for="(item, index) in tabList" :key="index"> |
|
|
|
|
<text>{{ item.name }}</text> |
|
|
|
|
<image v-if="activeIndex.indexOf(item.category_id) > -1" |
|
|
|
|
:src="$picUrl + '/static/news1/selected.png'" mode="widthFix"> |
|
|
|
|
</image> |
|
|
|
|
<view class="" v-for="(item, index) in tabList" :key="index"> |
|
|
|
|
<view class="shopText Text" :class="{'active1':activeIndex.indexOf(item.category_id) > -1}" |
|
|
|
|
@click="getShop(item,item.category_id)"> |
|
|
|
|
<text style="color: #333;font-weight: 700;">{{ item.name }}</text> |
|
|
|
|
<image v-if="activeIndex.indexOf(item.category_id) > -1" |
|
|
|
|
:src="$picUrl + '/static/news1/selected.png'" mode="widthFix"> |
|
|
|
|
</image> |
|
|
|
|
</view> |
|
|
|
|
<view class="shopItem2"> |
|
|
|
|
<view class="shopText" :class="{'active2':activeIndex.indexOf(item.category_id) > -1}" |
|
|
|
|
@click="getShop(item,item.category_id)" v-for="(item, index) in item.children" |
|
|
|
|
:key="index"> |
|
|
|
|
<text>{{ item.name }}2</text> |
|
|
|
|
<image v-if="activeIndex.indexOf(item.category_id) > -1" |
|
|
|
|
:src="$picUrl + '/static/news1/selected.png'" mode="widthFix"> |
|
|
|
|
</image> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
<view class="btnGroup"> |
|
|
|
@ -58,19 +70,31 @@ |
|
|
|
|
} |
|
|
|
|
console.log(this.activeIndex) |
|
|
|
|
}, |
|
|
|
|
submit() { |
|
|
|
|
let idList = []; |
|
|
|
|
this.tabList.forEach(item => { |
|
|
|
|
if (this.activeIndex.indexOf(item.category_id) > -1) { |
|
|
|
|
idList.push(item.category_id); |
|
|
|
|
findElementsById(arr, ids) { |
|
|
|
|
console.log(ids) |
|
|
|
|
let result = [] |
|
|
|
|
arr.forEach(item => { |
|
|
|
|
if (ids.indexOf(item.category_id) > -1) { |
|
|
|
|
result.push(item.category_id); |
|
|
|
|
item.children.forEach(item1 => { |
|
|
|
|
if (ids.indexOf(item1.category_id) > -1) { |
|
|
|
|
result.push(item1.category_id); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
return result; |
|
|
|
|
}, |
|
|
|
|
submit() { |
|
|
|
|
let idList = [] |
|
|
|
|
idList = this.findElementsById(this.tabList, this.activeIndex); |
|
|
|
|
let storage = uni.getStorageSync('list') || [] |
|
|
|
|
if (storage.length > 0 && idList.length > 0) { |
|
|
|
|
idList = this.getArrDifference(idList, storage) |
|
|
|
|
} |
|
|
|
|
console.log(idList) |
|
|
|
|
this.$emit('getChoseCategory', { |
|
|
|
|
category_id: idList, |
|
|
|
|
category_id: idList||[], |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
getArrDifference(arr1, arr2) { |
|
|
|
@ -135,18 +159,22 @@ |
|
|
|
|
border-bottom: 1px solid #EAEAEA; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.shopItem { |
|
|
|
|
margin-top: 40rpx; |
|
|
|
|
.shopItem2 { |
|
|
|
|
display: flex; |
|
|
|
|
flex-wrap: wrap; |
|
|
|
|
justify-content: space-between; |
|
|
|
|
align-items: center; |
|
|
|
|
margin-left: 40rpx; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.shopItem { |
|
|
|
|
margin-top: 40rpx; |
|
|
|
|
max-height: 750rpx; |
|
|
|
|
overflow-y: auto; |
|
|
|
|
|
|
|
|
|
.shopText { |
|
|
|
|
margin-right: 12rpx; |
|
|
|
|
width: 150upx; |
|
|
|
|
height: 72upx; |
|
|
|
|
height: 60upx; |
|
|
|
|
background: #FFFFFF; |
|
|
|
|
border-radius: 3px 3px 3px 3px; |
|
|
|
|
border: 1px solid #D6D6D6; |
|
|
|
@ -155,6 +183,9 @@ |
|
|
|
|
display: flex; |
|
|
|
|
justify-content: center; |
|
|
|
|
align-items: center; |
|
|
|
|
white-space: nowrap; |
|
|
|
|
text-overflow: ellipsis; |
|
|
|
|
overflow: hidden; |
|
|
|
|
|
|
|
|
|
text { |
|
|
|
|
font-size: 26upx; |
|
|
|
@ -175,9 +206,10 @@ |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.active { |
|
|
|
|
.active1 { |
|
|
|
|
text { |
|
|
|
|
|
|
|
|
|
font-weight: 700; |
|
|
|
|
font-size: 28rpx; |
|
|
|
|
color: #FF4F40; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
@ -185,6 +217,17 @@ |
|
|
|
|
border: 1px solid #FF4F40; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.active2 { |
|
|
|
|
text { |
|
|
|
|
font-weight: 500; |
|
|
|
|
font-size: 26rpx; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
border: 1px solid #FF4F40; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|