美文网首页让前端飞Web前端之路JavaScript 进阶营
我的第一个前端项目:博客之内容发布、评论等功能模块的制作

我的第一个前端项目:博客之内容发布、评论等功能模块的制作

作者: 我去_6aee | 来源:发表于2019-06-08 10:41 被阅读1次

上一篇文章将内容修改与内容删除完成,只剩下评论的分页和阅读全文。一个简单博客就完成了。当点击阅读全文时通过get方式将所点击的文章id值在地址栏传送给后台。后台通过let contentId = req.query.contentId;将值赋值。获得了文章的id值通过对数据库的查询就可以获得文章的全部信息,然后通过回调函数将值传给前台。在查询数据库是时要为文章阅读量设置对应的函数content.views++;这样每一次点击阅读全文就可以获得最新的阅读量。设置完成后保存在数据库里这时就可以render给前台了。

前台在获取到后台传过来的值时就可以在视图里将每一个值放在对应的为位置里。在数据库查询时会用到关联字段。通过一个库可以和另外一个库联系起来,共同展现在页面之中。在展现添加文本的时间时,最开始的时间是一个不利于阅读的字符串吧,所以在前台展现时需要使用content.time.toLocaleString()对时间进行处理。这样不仅方便美观,也会让用户更加浅显易懂。

评论是很关键一个部件,但在评论之前需要一个条件,只有在用户登陆时才能进行评论,如过没有登陆就会弹出一个提示,提示用户只有登陆才可以进行本次操作。在点击品论提交时判断登陆与否,在前面的文章里讲过只要有用户登陆就设置cookie值,这时就只需要判断 if(!req.userInfo)是否能执行。验证完成后就可以进行评论添加了。但是只有一句话作为评论显然是不够的,所以我们要对品论的结构进行设置,添加上品论的时间、是谁评论的。

设置完品论的格式后通过id查询数据库该文章的数据,然后通过then函数将获得的评论push到评论数组中去,添加完成后立马保存在数据库中去。在保存时的回调函数里通过res.send(contents.comment);将最新的文章信息发送给前台。在前台里的ajax里的success里将值接收到。后台给前台的数据需要使用comments = JSON.parse(msg).reverse();将值变成可以使用的对象。并且使用reverse将最新的评论放在前面。提高用户的体验效果。

如果前台接收到的数据过去庞大,所有的评论不能在一张页面展现完。这时就需要为所有的评论做分页。前台的分页与后台的分页有着异曲同工之处。设置记录当前页面的值page,规定每一页显示数据条数的值limit。通过for循环将值按当前的页数展现在页面之中。还需要注意pade的值最小不能小于1,page最大的值不能大于数据length/limit。

获取到页面中的上一页,下一页标签进行评论页面的跳转。当点击上一页时page++,下一页page--。在加减的同时执行renderComment对数据进行改变。但还有一个细节需要思考,点击进入全文时,开始是没有一个评论的,只有点击评论时才会刷新页面出现评论。所以我们在点击全文进入页面时就需要向后台发出请求,使用get方式将文章的标题发送给后台。后台通过标题查询将文章所有的评论发送给前台。当前台获得数据时调用renderComment函数将值直接展现在页面中。

相关文章

  • 我的第一个前端项目:博客之内容发布、评论等功能模块的制作

    上一篇文章将内容修改与内容删除完成,只剩下评论的分页和阅读全文。一个简单博客就完成了。当点击阅读全文时通过get方...

  • PHP:打造一个无限极评论模块

    我的毕设项目的评论模块原来是采用多说插件完成的,但是我现在希望能够自己管理评论内容,所以自己开始写评论模块。具体准...

  • PHP:打造一个无限极评论模块

    我的毕设项目的评论模块原来是采用多说插件完成的,但是我现在希望能够自己管理评论内容,所以自己开始写评论模块。具体准...

  • 我的第一个前端项目:博客之内容操作

    上一篇说到了内容添加与分类添加,已经让后台初具模型。接下来就是完善所有的操作。内容修改与内容删除是不可缺少的。先观...

  • 我的博客概述

    我的第一个开源项目:博客之家 1:首页 技术选型:前端:vue,iview,后台基于node.js,使用think...

  • 【前端之巅】群友博客锦集

    为了方便【前端之巅】群友学习进步,特将大家博客进行汇总。没有汇总上的同学,可以在评论区域添加自己的博客地址,并在微...

  • json-server & Axios

    新建项目,然后下载json-server模块 构建文件目录 client 前端文件 api 服务端文件 制作moc...

  • [实战干货]30分钟快速搭建hexo3.7.0 + next主题

    30分钟即可完成一个带评论、打赏、搜索、RSS、分类、标签等功能的博客高效的搭建让博主更加专注于内容的生产 欢迎关...

  • 博客发布之后的小总结

    前言 前天把个人博客发布到服务器上了,功能不多,但是五脏俱全,作为我的第一个项目,还算可以我的博客。在做博客的过程...

  • 鼎客网项目部分需求

    信息发布平台 信息发布平台主要包含信息栏目管理、信息发布(管理员、用户)、信息审核、信息评论等功能。 栏目管理 栏...

网友评论

    本文标题:我的第一个前端项目:博客之内容发布、评论等功能模块的制作

    本文链接:https://www.haomeiwen.com/subject/cytixctx.html