文章评论列表、楼主回复页面、热门消息页面的后端开发思路解析。
分类专栏: Tool&
简介 评论文章、评论楼主、回复和被回复之间的逻辑关系, 说实话,属实复杂,我想了好久,把思路理清之后才能做起来。
<p><span class="ql-size-large">--------------------------- 文章评论列表 ---------------------------</span></p><p><br></p><p>一、</p><p> 文章作者:threadId</p><p> 回复人:replyId</p><p><br></p><p>二、</p><p>点击回复,获取评论信息的回复id</p><p> let obj = {}</p><p> obj = _id</p><p><br></p><p>三、</p><p>发送操作</p><p><br></p><pre class="ql-syntax" spellcheck="false">判断 obj是否有值
obj = 评论_id
1.存在obj,属于回复信息,将评论信息id变为楼主id,
(threadId有值,replyId空,说明该条评论是评论楼主的)
{
threadId: obj,
replyId: 设置为空, (以此判断这条信息不是回复他人只是评论楼主)
replyUid: 设置为空, (以此判断这条信息没有人回复)
content: this.message,
uid: this.page.uid,
tid: this.page.contentId,
cuid: this.user._id,
type: 1
}
obj = {}
2.不存在obj, 属于评论信息,
(threadId和replyId同时为空 说明该条评论是评论文章的)
{
threadId: 设置为空 (以此判断这条信息是评论文章的)
replyId: 设置为空, (以此判断这条信息不是回复他人只是评论楼主)
replyUid: 设置为空, (以此判断这条信息没有人回复)
content: this.message,
uid: this.page.uid,
tid: this.page.contentId,
cuid: this.user._id,
type: 1,
isAnswer: 0
}
</pre><p>四、获取文章评论信息列表</p><pre class="ql-syntax" spellcheck="false"> isAnswer: 0或者threadId: ''(以此判断这条信息是评论文章的), tid: 文章id
</pre><p> </p><p>至此,文章评论列表展示、回复、评论功能完成</p><p><br></p><p><span class="ql-size-large">--------------------------- 文章评论列表 ---------------------------</span></p><p><span class="ql-size-large"> </span></p><p><span class="ql-size-large">--------------------------- 楼主回复页面 ---------------------------</span></p><p><br></p><p>一、</p><p>将文章评论列表中的_id,tid,uid作为参数传递,查询对应的楼主信息</p><p><br></p><pre class="ql-syntax" spellcheck="false">查询评论数据中 threadId === 楼主评论_id 的回复列表。
</pre><p>二、</p><p>回复楼主</p><p>(threadId有值,replyId空,说明该条评论是评论楼主的)</p><pre class="ql-syntax" spellcheck="false">{
threadId: 楼主评论_id,
replyId: 设置为空, (以此判断这条信息没有人回复)
replyUid: 设置为空, (以此判断这条信息没有人回复)
content: this.message,
uid: this.page.uid,
tid: this.page.contentId,
cuid: this.user._id,
type: 1
}
</pre><p><br></p><p>回复 除楼主以外评论人信息</p><pre class="ql-syntax" spellcheck="false">(threadId、replyId、replyUid有值说明是评论回复,或回复评论,
1.如果cuid !== 登录用户_id && replyUid === 登录用户,说明是他人评论我
2.如果cuid === 登录用户 _id,说明登录用户评论他人
3.如果cuid !== 登录用户_id && replyUid !== 登录用户 说明这条信息与登录用户无关
)
{
threadId: 楼主Id,
replyId: 除楼主以外评论人的评论_id,
replyUid: 除楼主以外评论人的评论cuid,
content: this.message,
uid: this.page.uid,
tid: this.page.contentId,
cuid: this.user._id,
type: 1
}
</pre><p><br></p><pre class="ql-syntax" spellcheck="false">回复信息展示: 判断存在replyId, 就展示对应的(被评论信息)
</pre><p><br></p><p><span class="ql-size-large">--------------------------- 楼主回复页面 ---------------------------</span></p><p><br></p><p><span class="ql-size-large">--------------------------- 热门消息页面 ---------------------------</span></p><p><br></p><p>一、三个方面, 文章评论、作者回复、他人回复</p><p> 查询列表 </p><pre class="ql-syntax" spellcheck="false"> {
uid: 登录用户db-id,
page: 0,
limit: 10
}
</pre><p><br></p><p> 过滤 : </p><p> 1.评论文章信息</p><pre class="ql-syntax" spellcheck="false"> {
threadId: '',(以此判断这条信息是评论文章的)
}
</pre><p> </p><p> 2.他人评论</p><pre class="ql-syntax" spellcheck="false"> {
isAnswer: 1,
cuid !== uid && replyUid === uid,说明是他人评论我,
}
</pre><p> </p><p> 3.登录用户回复他人</p><pre class="ql-syntax" spellcheck="false"> {
isAnswer: 1,
cuid === uid,说明登录用户评论他人
}
</pre><p><br></p><p><span class="ql-size-large">--------------------------- 热门消息页面 ---------------------------</span></p><p><br></p><p><br></p><p><br></p><p> </p><p><br></p><p><br></p><p><br></p><p><br></p><p><br></p>
分享到:
转载:
喜欢 3
收藏
暂无评论信息
- 相关文章
- 文章推荐
-
docker搭建jenkins环境执行宿主机的docker无权限的解决方法
初次搭建jenkins持续集成工具的时候,在运行项目阶段出现 permission denied的情况
-
Node 配置sequelize + mysql,根据模型自动创建数据库表
研究了一下午的node + sequelize + mysql。
-
Docker 常用命令
docker目前代替虚拟机使用的一个容器,灵活好用。
-
娱美德旗下MMORPG手游《传奇4》将推出新PVP玩法"比奇掠夺"&
《传奇4》推出新门派PVP玩法!韩国首尔2022年6月29日 /美通社/ -- 《传奇4》(MIR4)的新PVP玩法比奇掠夺(Bicheon Heist)于2022年6月28日推出。
- 点击排行
- 站长推荐
- 猜你喜欢
- 网站信息
- 站内问答:12篇
- 站内文章:213篇
- 建站时间:已运行1238天
- 备案号: 浙ICP备2022018799号
- 语言:
- English(USA)
- French(FR)
- Chinese(ZH)
无数据