You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							207 lines
						
					
					
						
							4.3 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							207 lines
						
					
					
						
							4.3 KiB
						
					
					
				
								<template>
							 | 
						|
									<view>
							 | 
						|
										<u-waterfall v-model="dataList" ref="uWaterfall" v-for="itemFather of listlength" :key="itemFather" v-if="itemFather == tabindex">
							 | 
						|
											<template v-slot:left="{leftList}">
							 | 
						|
												<view class="list-warter" v-for="(item, index) in leftList" :key="index">
							 | 
						|
													<view  @click="onClick(item.id)">
							 | 
						|
														<u-lazy-load threshold="-450" border-radius="8px 8px 0 0" :height="!ifsale?333:0" :img-mode="ifsale?'aspectFill':''" :image="item.picture" :index="index">
							 | 
						|
															<view class="list-label">已兑{{item.sale}}</view>
							 | 
						|
														</u-lazy-load>
							 | 
						|
														<view class="lf-p-20">
							 | 
						|
															<view class="list-title">
							 | 
						|
																{{item.title}}
							 | 
						|
															</view>
							 | 
						|
															<view>
							 | 
						|
																<text class="lf-font-36 lf-color-primary lf-font-bold">{{ item.store_nums }}</text>
							 | 
						|
																<text class="lf-font-24 lf-color-777 lf-m-l-10">个积分兑换</text>
							 | 
						|
															</view>
							 | 
						|
														</view>
							 | 
						|
													</view>
							 | 
						|
												</view>
							 | 
						|
											</template>
							 | 
						|
											<template v-slot:right="{rightList}">
							 | 
						|
												<view class="list-warter" v-for="(item, index) in rightList" :key="index">
							 | 
						|
													<view  @click="onClick(item.id)">
							 | 
						|
														<u-lazy-load threshold="-450" border-radius="8px 8px 0 0" :height="!ifsale?333:0" :img-mode="ifsale?'aspectFill':''" :image="item.picture" :index="index">
							 | 
						|
															<view class="list-label">已兑{{item.sale}}</view>
							 | 
						|
														</u-lazy-load>
							 | 
						|
														<view class="lf-p-20">
							 | 
						|
															<view class="list-title">
							 | 
						|
																{{item.title}}
							 | 
						|
															</view>
							 | 
						|
															<view>
							 | 
						|
																<text class="lf-font-36 lf-color-primary lf-font-bold">{{ item.store_nums }}</text>
							 | 
						|
																<text class="lf-font-24 lf-color-777 lf-m-l-10">个积分兑换</text>
							 | 
						|
															</view>
							 | 
						|
														</view>
							 | 
						|
													</view>
							 | 
						|
												</view>
							 | 
						|
											</template>
							 | 
						|
										</u-waterfall>
							 | 
						|
									</view>
							 | 
						|
								</template>
							 | 
						|
								
							 | 
						|
								<script>
							 | 
						|
									export default {
							 | 
						|
										props: {
							 | 
						|
											list: {
							 | 
						|
												type: Array,
							 | 
						|
												default: []
							 | 
						|
											},
							 | 
						|
											tabindex: {
							 | 
						|
												type: Number,
							 | 
						|
												default: 0
							 | 
						|
											},
							 | 
						|
											listlength: {
							 | 
						|
												type: Number,
							 | 
						|
												default: 1
							 | 
						|
											},
							 | 
						|
											ifsale: {
							 | 
						|
												type: Boolean,
							 | 
						|
												default: true
							 | 
						|
											}
							 | 
						|
										},
							 | 
						|
										data(){
							 | 
						|
											return {
							 | 
						|
												// dataList: []
							 | 
						|
											}
							 | 
						|
										},
							 | 
						|
										computed: {
							 | 
						|
											dataList: {
							 | 
						|
												get() {
							 | 
						|
													console.log('组件当前数据====',this.list)
							 | 
						|
													console.log(this.ifsale)
							 | 
						|
													return this.list; 
							 | 
						|
												},
							 | 
						|
												set(newValue) {  console.log('newvalue',newValue) }
							 | 
						|
											},
							 | 
						|
										},
							 | 
						|
										// watch: {
							 | 
						|
										// 	list(newValue,oldValue) {
							 | 
						|
										// 		console.log('值变了',newValue)
							 | 
						|
										// 		console.log('旧值',this.$refs)
							 | 
						|
										// 		// this.$forceUpdate();
							 | 
						|
												
							 | 
						|
												
							 | 
						|
										// 		this.dataList = newValue
							 | 
						|
												
							 | 
						|
										// 		console.log('当前值',this.dataList)
							 | 
						|
										// 		return newValue
							 | 
						|
										// 	}
							 | 
						|
										// },
							 | 
						|
										onShow(){
							 | 
						|
											
							 | 
						|
										},
							 | 
						|
										deactivated() {
							 | 
						|
											
							 | 
						|
										},
							 | 
						|
										onLoad() {
							 | 
						|
											
							 | 
						|
										},
							 | 
						|
										destroyed() {
							 | 
						|
											
							 | 
						|
										},
							 | 
						|
										methods: {
							 | 
						|
											onClick(id){
							 | 
						|
												this.$url('/pages/shop/goodsdetail?id='+id);
							 | 
						|
												this.$emit('click');
							 | 
						|
											},
							 | 
						|
											goAd(type,url){
							 | 
						|
												if(url) {
							 | 
						|
													if(type == 0) {
							 | 
						|
														this.$url(url);
							 | 
						|
													}else {
							 | 
						|
														this.$url('/pages/index/urlWeb?url='+url);
							 | 
						|
													}
							 | 
						|
												}
							 | 
						|
											},
							 | 
						|
											clear() {
							 | 
						|
												console.log('组件名',this.$refs)
							 | 
						|
												this.$refs.uWaterfall[0].clear();
							 | 
						|
											}
							 | 
						|
										}
							 | 
						|
									}
							 | 
						|
								</script>
							 | 
						|
								
							 | 
						|
								<style lang="scss" scoped="scoped">
							 | 
						|
									// ====
							 | 
						|
									.list-warter {
							 | 
						|
										border-radius: 20rpx;
							 | 
						|
										margin: 10px 5px;
							 | 
						|
										margin-top: 0px;
							 | 
						|
										background-color: #ffffff;
							 | 
						|
										// padding: 8px;
							 | 
						|
										position: relative;
							 | 
						|
										overflow: hidden;
							 | 
						|
										box-shadow: 0rpx 2rpx 8rpx 1rpx rgba(0, 0, 0, 0.1);
							 | 
						|
									}
							 | 
						|
									
							 | 
						|
									.u-close {
							 | 
						|
										position: absolute;
							 | 
						|
										top: 32rpx;
							 | 
						|
										right: 32rpx;
							 | 
						|
									}
							 | 
						|
									
							 | 
						|
									.list-image {
							 | 
						|
										width: 100%;
							 | 
						|
										border-radius: 4px;
							 | 
						|
									}
							 | 
						|
									
							 | 
						|
									.list-title {
							 | 
						|
										font-size: 28rpx;
							 | 
						|
										font-weight: bold;
							 | 
						|
										color: $u-main-color;
							 | 
						|
									}
							 | 
						|
									
							 | 
						|
									.list-label{
							 | 
						|
										position: absolute;
							 | 
						|
										bottom: 0;
							 | 
						|
										right: 0;
							 | 
						|
										background-color: rgba(0,0,0,0.5);
							 | 
						|
										width: 140rpx;
							 | 
						|
										height: 48rpx;
							 | 
						|
										border-radius: 20rpx 0rpx 0rpx 0rpx;
							 | 
						|
										font-size: 22rpx;
							 | 
						|
										color: #FFFFFF;
							 | 
						|
										line-height: 48rpx;
							 | 
						|
										text-align: center;
							 | 
						|
									}
							 | 
						|
									
							 | 
						|
									.list-tag {
							 | 
						|
										display: flex;
							 | 
						|
										margin-top: 5px;
							 | 
						|
									}
							 | 
						|
									
							 | 
						|
									.list-tag-owner {
							 | 
						|
										background-color: $u-type-error;
							 | 
						|
										color: #FFFFFF;
							 | 
						|
										display: flex;
							 | 
						|
										align-items: center;
							 | 
						|
										padding: 4rpx 14rpx;
							 | 
						|
										border-radius: 50rpx;
							 | 
						|
										font-size: 20rpx;
							 | 
						|
										line-height: 1;
							 | 
						|
									}
							 | 
						|
									
							 | 
						|
									.list-tag-text {
							 | 
						|
										border: 1px solid $u-type-primary;
							 | 
						|
										color: $u-type-primary;
							 | 
						|
										margin-left: 10px;
							 | 
						|
										border-radius: 50rpx;
							 | 
						|
										line-height: 1;
							 | 
						|
										padding: 4rpx 14rpx;
							 | 
						|
										display: flex;
							 | 
						|
										align-items: center;
							 | 
						|
										border-radius: 50rpx;
							 | 
						|
										font-size: 20rpx;
							 | 
						|
									}
							 | 
						|
									
							 | 
						|
									.list-price {
							 | 
						|
										font-size: 30rpx;
							 | 
						|
										color: $u-type-error;
							 | 
						|
										margin-top: 5px;
							 | 
						|
										display: flex;
							 | 
						|
										align-items: center;
							 | 
						|
									}
							 | 
						|
									// ====
							 | 
						|
								</style>
							 |