合并代码
This commit is contained in:
parent
0c4aaade96
commit
164c7456b0
|
@ -268,6 +268,19 @@ const video = {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 点赞/取消点赞评论
|
||||||
|
* @param {Object} param
|
||||||
|
*/
|
||||||
|
likecomment(param) {
|
||||||
|
return util.request({
|
||||||
|
url: `/video/comment/likecomment`,
|
||||||
|
data: param.data,
|
||||||
|
method: 'POST',
|
||||||
|
load: true,
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 热点视频
|
* 热点视频
|
||||||
* @param {Object} param
|
* @param {Object} param
|
||||||
|
|
|
@ -38,7 +38,7 @@
|
||||||
// 输入框为空时占位符
|
// 输入框为空时占位符
|
||||||
const placeholder = computed(() => {
|
const placeholder = computed(() => {
|
||||||
let result = '评论一下吧~'
|
let result = '评论一下吧~'
|
||||||
if (reply.id) result = `回复 @${reply.userNickname}`
|
if (reply.id) result = `回复 @${reply.nickName}`
|
||||||
return result
|
return result
|
||||||
})
|
})
|
||||||
// 填充高度
|
// 填充高度
|
||||||
|
@ -120,14 +120,17 @@
|
||||||
//
|
//
|
||||||
api.video.savecomment({
|
api.video.savecomment({
|
||||||
data: {
|
data: {
|
||||||
// 视频父id
|
// 评论的一级id
|
||||||
parentId: reply.id ? reply.id : 0,
|
parentId: reply.childrenParentId || 0,
|
||||||
// 视频id
|
// 视频id
|
||||||
videoId: detail.id,
|
videoId: detail.id,
|
||||||
// 评论内容
|
// 评论内容
|
||||||
content: content.value,
|
content: content.value,
|
||||||
// 用户id
|
// 用户id
|
||||||
userId: userinfo.value.id,
|
userId: userinfo.value.id,
|
||||||
|
// 评论的父id
|
||||||
|
childrenParentId: reply.id || 0,
|
||||||
|
|
||||||
}
|
}
|
||||||
}).then(rs => {
|
}).then(rs => {
|
||||||
console.log('saveComment', rs)
|
console.log('saveComment', rs)
|
||||||
|
@ -173,9 +176,11 @@
|
||||||
/**
|
/**
|
||||||
* 回复对象
|
* 回复对象
|
||||||
* @param {Object} item 回复的评论对象
|
* @param {Object} item 回复的评论对象
|
||||||
|
* @param {Object} childrenParentId 评论的一级id
|
||||||
*/
|
*/
|
||||||
function handleReply(item) {
|
function handleReply(item, childrenParentId) {
|
||||||
Object.assign(reply, item)
|
Object.assign(reply, item)
|
||||||
|
reply.childrenParentId = childrenParentId
|
||||||
proxy.$refs.comment.open()
|
proxy.$refs.comment.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -215,17 +220,20 @@
|
||||||
*/
|
*/
|
||||||
function getLevelCommentList(item, index) {
|
function getLevelCommentList(item, index) {
|
||||||
//
|
//
|
||||||
api.video.levelCommentList({
|
api.video.getcomment({
|
||||||
query: {
|
data: {
|
||||||
commentId: item.id,
|
// 视频id
|
||||||
|
videoId: item.videoId,
|
||||||
|
// 父节点id
|
||||||
|
parentId: item.id,
|
||||||
pageSize: item.pageSize,
|
pageSize: item.pageSize,
|
||||||
pageNum: item.pageNum,
|
pageNum: item.pageNum,
|
||||||
}
|
}
|
||||||
}).then(rs => {
|
}).then(rs => {
|
||||||
|
console.log('getcomment', rs)
|
||||||
if (rs.code == 200) {
|
if (rs.code == 200) {
|
||||||
// 追加子列表
|
// 追加子列表
|
||||||
listProperty.data[index].child.push(...rs.rows.map(node => {
|
listProperty.data[index].child.push(...rs.rows.map(node => {
|
||||||
node.formatUserPortrait = util.format_url(node.userPortrait, 'img')
|
|
||||||
return node
|
return node
|
||||||
}))
|
}))
|
||||||
// 展示列表
|
// 展示列表
|
||||||
|
@ -242,22 +250,40 @@
|
||||||
/**
|
/**
|
||||||
* 评论点赞
|
* 评论点赞
|
||||||
* @param {Object} item 视频对象
|
* @param {Object} item 视频对象
|
||||||
|
* @param {Object} index 一级下标
|
||||||
|
* @param {Object} secIndex 二级下标
|
||||||
*/
|
*/
|
||||||
function handleLike(item) {
|
function handleLike(item, index, secIndex) {
|
||||||
util.isLogin().then(rs => {
|
util.isLogin().then(rs => {
|
||||||
//
|
//
|
||||||
api.video.thumbsUp({
|
api.video.likecomment({
|
||||||
query: {
|
data: {
|
||||||
// 0取消 1点赞
|
// 0取消 1点赞
|
||||||
type: item.isLike ? 0 : 1,
|
likeType: {
|
||||||
|
'0': '1',
|
||||||
|
'1': '0',
|
||||||
|
} [item.likeType],
|
||||||
// 评论id
|
// 评论id
|
||||||
commentId: item.id,
|
id: item.id,
|
||||||
|
// 视频id
|
||||||
|
videoId: detail.id,
|
||||||
}
|
}
|
||||||
}).then(rs => {
|
}).then(rs => {
|
||||||
if (rs.code == 200) {
|
if (rs.code == 200) {
|
||||||
if (item.isLike) item.likes--
|
// 点赞
|
||||||
else item.likes++
|
let obj = {
|
||||||
item.isLike = !item.isLike
|
...item,
|
||||||
|
...rs.data,
|
||||||
|
}
|
||||||
|
|
||||||
|
// 如果是一级
|
||||||
|
if (secIndex == undefined) {
|
||||||
|
listProperty.data.splice(index, 1, obj)
|
||||||
|
}
|
||||||
|
// 如果是二级
|
||||||
|
else {
|
||||||
|
listProperty.data[index].child.splice(secIndex, 1, obj)
|
||||||
|
}
|
||||||
//
|
//
|
||||||
listProperty.data = JSON.parse(JSON.stringify(listProperty.data))
|
listProperty.data = JSON.parse(JSON.stringify(listProperty.data))
|
||||||
return
|
return
|
||||||
|
@ -319,53 +345,61 @@
|
||||||
<text class="mt5 c333 f28">{{item.content}}</text>
|
<text class="mt5 c333 f28">{{item.content}}</text>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="like oh aic pl20" @click="handleLike(item)">
|
<view class="like oh aic pl20" @click="handleLike(item,index)">
|
||||||
<uni-icons type="heart-filled" :color="item.isLike ? '#F84259' : '#b3b3b3'"
|
<uni-icons type="heart-filled"
|
||||||
size="32rpx" />
|
:color="item.likeType == 0 ? '#F84259' : '#b3b3b3'" size="32rpx" />
|
||||||
<text class="c333 f24">{{item.likes}}</text>
|
<text class="c333 f24">{{item.likeCount}}</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 发布时间和回复 -->
|
<!-- 发布时间和回复 -->
|
||||||
<view class="df fdr mt10">
|
<view class="df fdr mt10">
|
||||||
<text class="c999 f24">{{item.createTime}}</text>
|
<text class="c999 f24">{{item.createTime}}</text>
|
||||||
<view class="ml100" @click="handleReply(item)">
|
<view class="ml100" @click="handleReply(item,item.id)">
|
||||||
<text class="c666 f24">回复</text>
|
<text class="c666 f24">回复</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<template v-if="item.num != 0">
|
<template v-if="item.childrenCommentCount != 0">
|
||||||
<!-- 子评论 -->
|
<!-- 子评论 -->
|
||||||
<view class="child" v-if="item.childShow">
|
<view class="child" v-if="item.childShow">
|
||||||
<view class="df fdr mt15" v-for="(secItem,secIndex) in item.child"
|
<view class="df fdr mt15" v-for="(secItem,secIndex) in item.child"
|
||||||
:key="secItem.id">
|
:key="secItem.id">
|
||||||
<!-- 头像 -->
|
<!-- 头像 -->
|
||||||
<image class="wh40 cir" :src="secItem.formatUserPortrait"
|
<image class="wh40 cir" :src="secItem.headPortrait" mode="aspectFill"
|
||||||
mode="aspectFill" @click="toUser(secItem)" />
|
@click="toUser(secItem)" />
|
||||||
|
|
||||||
<view class="col pl20 f1">
|
<view class="col pl20 f1">
|
||||||
<!-- 用户信息和点赞 -->
|
<!-- 用户信息和点赞 -->
|
||||||
<view class="df fdr">
|
<view class="df fdr">
|
||||||
<view class="f1">
|
<view class="f1">
|
||||||
<text class="c333 f24"
|
<view class="fdr aic">
|
||||||
@click="toUser(secItem)">{{secItem.userNickname}}</text>
|
<text class="c333 f24"
|
||||||
<rich-text class="mt5 c333 f28"
|
@click="toUser(secItem)">{{secItem.nickName}}</text>
|
||||||
:nodes="secItem.context"></rich-text>
|
<template
|
||||||
|
v-if="secItem.childrenParentId != secItem.parentId">
|
||||||
|
<text class="mlr10 c333 f24">回复</text>
|
||||||
|
<text
|
||||||
|
class="c333 f24">{{secItem.replyUserName}}</text>
|
||||||
|
</template>
|
||||||
|
</view>
|
||||||
|
<text class="mt5 c333 f28">{{secItem.content}}</text>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="like oh aic pl20" @click="handleLike(secItem)">
|
<view class="like oh aic pl20"
|
||||||
|
@click="handleLike(secItem,index,secIndex)">
|
||||||
<uni-icons type="heart-filled"
|
<uni-icons type="heart-filled"
|
||||||
:color="secItem.isLike ? '#F84259' : '#b3b3b3'"
|
:color="secItem.likeType == 0 ? '#F84259' : '#b3b3b3'"
|
||||||
size="32rpx" />
|
size="32rpx" />
|
||||||
<text class="c333 f24">{{secItem.likes}}</text>
|
<text class="c333 f24">{{secItem.likeCount}}</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 发布时间和回复 -->
|
<!-- 发布时间和回复 -->
|
||||||
<view class="df fdr mt10">
|
<view class="df fdr mt10">
|
||||||
<text class="c999 f24">{{secItem.createTime}}</text>
|
<text class="c999 f24">{{secItem.createTime}}</text>
|
||||||
<text class="ml100 c666 f24" @click="handleReply(secItem)"
|
<text class="ml100 c666 f24"
|
||||||
v-if="0">回复</text>
|
@click="handleReply(secItem,item.id)">回复</text>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
|
@ -376,12 +410,13 @@
|
||||||
<view class="line mr10"></view>
|
<view class="line mr10"></view>
|
||||||
|
|
||||||
<template v-if="item.childShow">
|
<template v-if="item.childShow">
|
||||||
<template v-if="item.num == item.child.length">
|
<template v-if="item.childrenCommentCount == item.child.length">
|
||||||
<text class="c666 f24">收起</text>
|
<text class="c666 f24">收起</text>
|
||||||
<uni-icons type="top" />
|
<uni-icons type="top" />
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<text class="c666 f24">展开{{item.num - item.child.length}}条回复</text>
|
<text
|
||||||
|
class="c666 f24">展开{{item.childrenCommentCount - item.child.length}}条回复</text>
|
||||||
<uni-icons type="bottom" />
|
<uni-icons type="bottom" />
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
|
@ -417,7 +452,7 @@
|
||||||
<!-- 回复弹窗 -->
|
<!-- 回复弹窗 -->
|
||||||
<uni-popup ref="comment" type="bottom">
|
<uni-popup ref="comment" type="bottom">
|
||||||
<view class="popBot ptb30 plr30 bfff">
|
<view class="popBot ptb30 plr30 bfff">
|
||||||
<textarea v-model="content" :adjust-position="false" class="textarea" :placeholder="placeholder" />
|
<textarea v-model="content" :adjust-position="false" class="textarea c333" :placeholder="placeholder" />
|
||||||
|
|
||||||
<view class="df fdr jcr">
|
<view class="df fdr jcr">
|
||||||
<view class="btn sm black plr20" @click="handleSubmit">
|
<view class="btn sm black plr20" @click="handleSubmit">
|
||||||
|
|
|
@ -357,6 +357,11 @@ type
|
||||||
0 非好友
|
0 非好友
|
||||||
1 好友
|
1 好友
|
||||||
|
|
||||||
|
评论列表
|
||||||
|
likeType
|
||||||
|
0 已点赞
|
||||||
|
1 未点赞
|
||||||
|
|
||||||
生成订单到平台客服 平台客服去跟进订单
|
生成订单到平台客服 平台客服去跟进订单
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue