| | |
| | | <view class="pl-wu" v-if="commentList.length === 0"> |
| | | <image src="/static/images/default_nocomment@2x.png" mode="widthFix"></image> |
| | | </view> |
| | | <view class="pl-item" v-for="(item, index) in commentList" :key="item.id" v-else> |
| | | <view class="pl-item" v-for="(item, index) in commentList" :key="item.id" v-else @longpress="openDele(item, index)"> |
| | | <view class="pl-item-tx"> |
| | | <image :src="item.memberImgUrl" mode="widthFix"></image> |
| | | <image :src="item.memberImgUrl || '/static/icon/default.png'" mode="widthFix"></image> |
| | | </view> |
| | | <view class="pl-item-info" @click.stop="openTwo(item.id, item)"> |
| | | <view class="pl-item-info" @click.stop="openTwo(item.id, item, item.nikeName)"> |
| | | <view class="pl-item-info-name">{{item.nikeName}}</view> |
| | | <view class="pl-item-info-content" v-if="item.content"> |
| | | {{item.content}} |
| | |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="pl-item" style="border: none;" v-for="(child, a) in item.childern" :key="child.id" > |
| | | <view class="pl-item" style="border: none;" v-for="(child, a) in item.childern" :key="child.id" @click.stop="openTwo(item.id, child, child.nikeName)" @longpress.stop="openDele(child, index, a)"> |
| | | <view class="pl-item-tx"> |
| | | <image :src="child.memberImgUrl" mode="widthFix"></image> |
| | | <image :src="child.memberImgUrl || '/static/icon/default.png'" mode="widthFix"></image> |
| | | </view> |
| | | <view class="pl-item-info"> |
| | | <view class="pl-item-info-name">{{child.nikeName}}</view> |
| | |
| | | <view class="pl-item-info-data"> |
| | | <view class="pl-item-info-data-time">{{child.createDate}}</view> |
| | | <view class="pl-item-info-data-list"> |
| | | <view class="pl-item-info-data-list-item" @click.stop="openTwo(item.id, child)"> |
| | | <view class="pl-item-info-data-list-item"> |
| | | <image src="/static/icon/ic_reply2@2x.png" mode="widthFix"></image> |
| | | </view> |
| | | <view class="pl-item-info-data-list-item" @click.stop="dianzanpl(child)"> |
| | |
| | | <view style="width: 100%; height: env(safe-area-inset-bottom);"></view> |
| | | </view> |
| | | <!-- 删除评论 --> |
| | | <u-popup :show="show" round="5" mode="bottom"> |
| | | <u-popup :show="show" round="5" mode="bottom" @close="show = false"> |
| | | <view class="dele"> |
| | | <view class="dele-title">删除我的评论</view> |
| | | <view class="dele-item" style="color: #E4001D;">删除</view> |
| | | <view class="dele-item" style="color: #E4001D;" @click="deleOne">删除</view> |
| | | <view class="dele-item" @click="show = false">取消</view> |
| | | </view> |
| | | </u-popup> |
| | |
| | | <u-popup :show="show1" round="5" mode="bottom" @close="closePush"> |
| | | <view class="pus"> |
| | | <view class="pus-content"> |
| | | <textarea placeholder="说点什么吧~" v-model="value"></textarea> |
| | | <textarea :placeholder="nikeName ? `回复${nikeName}的评论` : '说点什么吧~'" v-model="value"></textarea> |
| | | <view class="pus-content-list" v-if="multifileList.length > 0"> |
| | | <view class="pus-content-list-item" v-for="(item, index) in multifileList" :key="index"> |
| | | <view class="shanchu" @click.stop="deleImg(index)"> |
| | |
| | | page: 1, |
| | | next: true, |
| | | value: '', |
| | | nikeName: '', |
| | | multifileList: [], |
| | | |
| | | commentId: null, |
| | | item: null |
| | | pl: null, |
| | | item: null, |
| | | one: null, |
| | | two: null |
| | | } |
| | | }, |
| | | onLoad(option) { |
| | |
| | | } |
| | | }, |
| | | methods: { |
| | | openDele(item, one, two) { |
| | | this.one = one |
| | | this.two = two |
| | | this.pl = item |
| | | |
| | | if ((item.memberId === this.userInfo.id) && item.isdeleted !== 1) { |
| | | this.show = true |
| | | } |
| | | }, |
| | | deleOne() { |
| | | this.$u.api.deleteComment(this.pl.id) |
| | | .then(res => { |
| | | if (res.code === 200) { |
| | | this.pl.content = '该评论已被原作者删除' |
| | | this.pl.isdeleted = 1 |
| | | // if (this.one && !this.two) { |
| | | // this.commentList[this.one].content = '该评论已被原作者删除' |
| | | // this.commentList[this.one].isdeleted = 1 |
| | | // } else if (this.one && this.two) { |
| | | // this.commentList[this.one].childern[this.two].content = '该评论已被原作者删除' |
| | | // this.commentList[this.one].childern[this.two].isdeleted = 1 |
| | | // } |
| | | // this.one = null |
| | | // this.two = null |
| | | this.pl = null |
| | | this.show = false |
| | | } |
| | | }) |
| | | }, |
| | | // 点赞 |
| | | dianzanpl(item) { |
| | | if (!this.userInfo) { |
| | |
| | | } |
| | | }, |
| | | // 二级评论 |
| | | openTwo(commentId, item) { |
| | | openTwo(commentId, item, nikeName) { |
| | | if (!this.userInfo) { |
| | | this.$refs.login.open() |
| | | return; |
| | | } |
| | | this.item = item |
| | | this.commentId = commentId |
| | | this.nikeName = nikeName |
| | | this.show1 = true |
| | | }, |
| | | // 删除图片 |
| | |
| | | closePush() { |
| | | this.item = null |
| | | this.commentId = null |
| | | this.nikeName = '' |
| | | this.value = '' |
| | | this.multifileList = [] |
| | | this.show1 = false |
| | |
| | | height: 132rpx; |
| | | border-radius: 16rpx; |
| | | overflow: hidden; |
| | | margin-bottom: 15rpx; |
| | | image { |
| | | width: 100%; |
| | | } |