点赞收藏评论功能的实现

点赞收藏评论功能的实现思路

1、点赞

1、设计数据库

数据库结构如下(upvote表):

数据库字段类型描述
likeIdvarchar(255)upvote表的主键可以使用UUID
userIdvarchar(255)点赞用户的ID
articleIdvarchar(255)点赞的文章
likeStatusint点赞的状态:0表示未点赞状态,1表示已点赞状态
likeCategoryint1表示点赞,0表示踩

2、前端传送数据给后端

前端通过ajax异步请求,当鼠标点击点赞按钮时发出异步请求,并携带当前文章的ID和当前点赞作者的ID传给后端处理器。

3、后端处理数据并返回Json数据格式

后端接收到前端传来的数据后首先根据userId和articleId判断数据库中是否存在该点赞数据,如果存在首先判断【点赞状态】和【点赞类型】如果点赞类型为**【点赞】**则直接改变其【点赞状态】,可以使用+1在取余的方式,如果【点赞类型】为【】且【点赞状态】为【未点赞】则改变其【点赞类型】和【点赞状态】。

如果不存在则重新插入一条新的数据。完成操作后,返回根据userId和articleId查询出的upvote对象的Json格式。

4、前端接收数据并根据数据进行相应操作

前端接收到返回的对象后,将其进行转换为前端对象,通过对象中的状态值来判断文章是否被点赞,相应的改变点赞按钮的状态。

5、踩功能的实现

踩功能的实现与上述点赞功能基本相似

1、前端传送数据给后端

当用户点击踩按钮,同样传送数据给后端。

2、后端处理数据并返回Json数据格式

后端接收到前端传来的数据后首先根据userId和articleId判断数据库中是否存在该点赞数据,如果存在首先判断【点赞状态】和【点赞类型】如果点赞类型为**【踩】**则直接改变其【点赞状态】,如果【点赞类型】为【点赞】且【点赞状态】为【未点赞】则改变其【点赞类型】和【点赞状态】。

如果不存在则重新插入一条新的数据。完成操作后,返回根据userId和articleId查询出的upvote对象的Json格式。

3、前端接收数据并根据数据进行相应操作

此处就不多赘述了

2、收藏

收藏功能的实现和上述点赞功能相类似,甚至比其更容易理解一些

首先第一步还是创建数据库

1、设计数据库

数据库结构如下(collect表):

数据库字段类型描述
collectIdvarchar(255)collect表的主键,可以使用UUID
userIdvarchar(255)收藏用户的ID
articleIdvarchar(255)收藏的文章
collectStatusint收藏的状态:0表示未收藏状态,1表示已收藏状态

2、前端传送数据给后端

与点赞过程像类似,这里就不过多赘述了

3、后端处理数据并返回Json数据格式

与点赞过程像类似,但是判断的逻辑不太一样

判断逻辑:

后端接收到前端传来的数据后首先根据userId和articleId判断数据库中是否存在该收藏数据,如果存在则改变其收藏状态,如果不存在,则新插入一条收藏数据。

4、前端接收数据并根据数据进行相应操作

与点赞过程像类似,这里就不过多赘述了

3、评论

1、设计数据库

数据库结构如下(comment表):

数据库字段类型描述
commentIdvarchar(255)comment表的主键,可以使用UUID
userIdvarchar(255)评论者用户的ID
articleIdvarchar(255)评论的文章
commentDetailvarchar(1000)评论内容

2、前端传送数据给后端

前端相关数据给后端

  1. 评论者ID
  2. 评论文章的ID
  3. 评论的内容

3、后端处理数据并返回Json数据格式

每有一条评论传送到后端,后端均保存到数据库,并且增加评论的数量,最后返回新增的评论对象。

4、前端接收数据并根据数据进行相应操作

前端接收到该条评论,并且将其显示在前端页面上

4、总结

以上就是本人实现点赞收藏评论功能的大体思路,希望大家积极留言,共同学习共同进步!!

  • 7
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值