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.
177 lines
3.8 KiB
177 lines
3.8 KiB
<template name="dynamics">
|
|
<view class="find-container">
|
|
<view class="dynamic-item" v-for="(item1,index1) in list" :key="index1">
|
|
<view class="bg-white flex justify-between" style="padding: 30rpx;">
|
|
<view class="avatar-left">
|
|
<image class="avatar" :src="IMAGE_URL+item1.headImgUrl" mode="aspectFill"></image>
|
|
</view>
|
|
<view class="finder-msg flex-sub flex flex-direction clear">
|
|
<view class="avatar-right flex flex-direction justify-center">
|
|
<view class="">{{item1.nickname}}</view>
|
|
<view class="time">{{item1.createdAt}}</view>
|
|
</view>
|
|
<view class="dynamic-con">
|
|
<view class="pic-con flex flex-wrap">
|
|
<view class="bg-img pic-item" v-for="(item2,index2) in item1.photos" :key="index2" :style="'background-image: url('+IMAGE_URL+item2.url+');'"
|
|
@tap="previewImage(index2,item1.photos)"></view>
|
|
</view>
|
|
<view class="txt-con">{{item1.text}}</view>
|
|
</view>
|
|
|
|
<view class="goods-box flex justify-between" v-if="showGoodsLink">
|
|
<view class="flex flex-sub clear align-center" @tap="toDetail(item1.goods.id)">
|
|
<image class="goods-pic" :src="IMAGE_URL+item1.goods.mainPhotoURL" mode="aspectFill"></image>
|
|
<view class="goods-con flex-sub clear">
|
|
<view class="goods-name text-hidden">{{item1.goods.name}}</view>
|
|
<view class="goods-price">¥{{item1.goods.price}}</view>
|
|
</view>
|
|
</view>
|
|
<view class="flex flex-direction justify-center">
|
|
<button class="btn" open-type="share" :data-goods="item1.goods"><i class="iconfont iconzhuanfa"></i></button>
|
|
</view>
|
|
</view>
|
|
|
|
<view class="btn-con flex">
|
|
<view class="btn-item" @tap="downloadPic(item1.photos)">下载发圈</view>
|
|
<view class="btn-item" @tap="copyWords(item1.text)">复制文字</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
name: "dynamics",
|
|
data() {
|
|
return {
|
|
IMAGE_URL: this.IMAGE_URL
|
|
};
|
|
},
|
|
props: {
|
|
list: {
|
|
type: Array,
|
|
value: [],
|
|
},
|
|
showGoodsLink: { //是否显示商品转发链接
|
|
type: Boolean,
|
|
value: false,
|
|
}
|
|
},
|
|
methods: {
|
|
toDetail(id){
|
|
uni.navigateTo({
|
|
url:"/pages/goodsDetail/goodsDetail?id="+id
|
|
})
|
|
},
|
|
previewImage(index, images) {
|
|
let picUrls = images.map(item => {
|
|
return this.IMAGE_URL + item.url
|
|
})
|
|
console.log(picUrls)
|
|
// return
|
|
uni.previewImage({
|
|
urls: picUrls,
|
|
current: index,
|
|
success:(res)=>{
|
|
console.log("success")
|
|
}
|
|
});
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss">
|
|
.dynamic-item {
|
|
padding-top: 10rpx;
|
|
|
|
.avatar {
|
|
width: 80rpx;
|
|
height: 80rpx;
|
|
border-radius: 50%;
|
|
margin-right: 20rpx;
|
|
}
|
|
|
|
.avatar-right {
|
|
height: 80rpx;
|
|
}
|
|
|
|
.time {
|
|
font-size: 24rpx;
|
|
margin-top: 6rpx;
|
|
color: #888888;
|
|
}
|
|
|
|
.dynamic-con {
|
|
.pic-con {
|
|
padding: 20rpx 0 10rpx;
|
|
}
|
|
|
|
.pic-item {
|
|
width: 190rpx;
|
|
height: 190rpx;
|
|
border-radius: 5rpx;
|
|
margin-bottom: 10rpx;
|
|
margin-right: 10rpx;
|
|
|
|
&:nth-child(3n) {
|
|
margin-right: 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
.goods-box {
|
|
background-color: #f5f5f5;
|
|
padding: 10rpx;
|
|
margin-top: 30rpx;
|
|
border-radius: 5rpx;
|
|
|
|
.goods-pic {
|
|
width: 120rpx;
|
|
height: 120rpx;
|
|
border-radius: 5rpx;
|
|
margin-right: 15rpx;
|
|
}
|
|
|
|
.goods-con {
|
|
color: #666666;
|
|
|
|
.goods-price {
|
|
margin-top: 8rpx;
|
|
}
|
|
}
|
|
|
|
.iconzhuanfa {
|
|
padding: 0 15rpx;
|
|
font-size: 40rpx;
|
|
color: #333333;
|
|
}
|
|
.btn{
|
|
background-color: transparent;
|
|
border: 0;
|
|
padding: 0;
|
|
&::after{
|
|
content: none;
|
|
}
|
|
}
|
|
}
|
|
|
|
.btn-con {
|
|
padding: 30rpx 0 10rpx;
|
|
|
|
.btn-item {
|
|
background-color: #f1f1f1;
|
|
font-size: 28rpx;
|
|
width: 180rpx;
|
|
line-height: 60rpx;
|
|
border-radius: 35rpx;
|
|
text-align: center;
|
|
margin-right: 30rpx;
|
|
color: #333333;
|
|
}
|
|
}
|
|
}
|
|
</style>
|