发布文章/评论-时间展示

需求背景:在做社区项目的时候,发文章/评论的时间展示为:小于1分钟为刚刚,大于1分钟&&小于1小时,显示xx分钟,小于24小时,展示为xx小时前,大于24小时&&小于1天,显示为昨天xx:xx;

解决方案:moment结合vue的filters

步骤:

1.下载moment    

下载指令:npm install moment

2.新建一个moment.js文件,将以下内容放置该文件中(根据需求做相应调整) 

import moment from 'moment'
moment().constructor.prototype.fromNow = function (type = 1) {
  let isSameYear = this.isSame(new Date(), 'year');
  let isSameDay = this.isSame(new Date(), 'day');
  switch (type) {
    case 1: // 社区详情页
      if (!isSameYear) {
        return this.format('YY/MM/DD HH:mm');
      }
      if (!isSameDay) {
        return this.format('MM/DD HH:mm');
      }
      if (isSameDay) {
        return this.format('HH:mm');
      }
      break;
    case 2: //帖子列表
      let diffM =
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 系统需求 该个人博客系统需要支持以下功能: - 注册和登录功能。 - 文章发布、修改、删除和查看功能。 - 评论功能。 - 分类和标签管理功能。 - 搜索功能。 - 友情链接功能。 - 管理员后台管理功能。 2. 技术选型 - 后端框架:Spring Boot - 数据库:MySQL - 前端框架:Vue - 前端UI库:ElementUI - 数据交互:RESTful API 3. 系统架构 该个人博客系统采用前后端分离的架构,前端使用Vue框架,后端使用Spring Boot框架。前后端之间通过RESTful API进行数据交互。 后端主要包含以下几个模块: - 用户模块:包含用户注册、登录、密码修改等功能。 - 文章模块:包含文章的增删改查、分页查询等功能。 - 评论模块:包含评论的增删改查功能。 - 分类和标签模块:包含分类和标签的增删改查功能。 - 搜索模块:包含搜索文章评论的功能。 - 友情链接模块:包含友情链接的增删改查功能。 - 管理员模块:包含管理员登录、文章管理、分类管理、标签管理、评论管理等功能。 4. 数据库设计 系统需要存储的数据包括用户信息、文章信息、评论信息、分类信息、标签信息、友情链接信息等。 - 用户表(user):存储用户的基本信息,包括用户ID、用户名、密码、邮箱等字段。 - 文章表(article):存储文章的详细信息,包括文章ID、标题、内容、发布时间、分类ID、标签ID等字段。 - 评论表(comment):存储评论的详细信息,包括评论ID、评论内容、评论时间文章ID、用户ID等字段。 - 分类表(category):存储文章的分类信息,包括分类ID、分类名称等字段。 - 标签表(tag):存储文章的标签信息,包括标签ID、标签名称等字段。 - 友情链接表(link):存储友情链接的信息,包括链接ID、链接名称、链接地址等字段。 5. API设计 - 注册接口:POST /api/user/register - 登录接口:POST /api/user/login - 文章列表接口:GET /api/article - 文章详情接口:GET /api/article/{id} - 文章发布接口:POST /api/article - 文章更新接口:PUT /api/article/{id} - 文章删除接口:DELETE /api/article/{id} - 评论列表接口:GET /api/comment - 评论详情接口:GET /api/comment/{id} - 评论发布接口:POST /api/comment - 评论更新接口:PUT /api/comment/{id} - 评论删除接口:DELETE /api/comment/{id} - 分类列表接口:GET /api/category - 分类详情接口:GET /api/category/{id} - 分类发布接口:POST /api/category - 分类更新接口:PUT /api/category/{id} - 分类删除接口:DELETE /api/category/{id} - 标签列表接口:GET /api/tag - 标签详情接口:GET /api/tag/{id} - 标签发布接口:POST /api/tag - 标签更新接口:PUT /api/tag/{id} - 标签删除接口:DELETE /api/tag/{id} - 搜索接口:GET /api/search?q={keyword} - 友情链接列表接口:GET /api/link - 友情链接详情接口:GET /api/link/{id} - 友情链接发布接口:POST /api/link - 友情链接更新接口:PUT /api/link/{id} - 友情链接删除接口:DELETE /api/link/{id} 6. 前端页面设计 - 首页:展示最新文章、分类、标签、友情链接等。 - 文章列表页:展示文章列表,支持分页和搜索功能。 - 文章详情页:展示文章详细信息和评论列表,支持评论功能。 - 分类列表页:展示分类列表,支持添加、编辑和删除分类。 - 标签列表页:展示标签列表,支持添加、编辑和删除标签。 - 友情链接页:展示友情链接列表,支持添加、编辑和删除友情链接。 - 登录页:用户登录页面。 - 注册页:用户注册页面。 7. 系统部署 - 后端部署:使用Maven构建Spring Boot项目,打成jar包,然后使用java -jar命令启动项目。 - 前端部署:使用npm安装Vue项目依赖,然后使用npm run build命令打包项目。 - 数据库部署:使用MySQL数据库,将数据库脚本导入数据库即可。 总结 基于Spring Boot和Vue的个人博客系统设计,实现了用户的注册和登录、文章发布、修改、删除和查看、评论、分类和标签管理、搜索、友情链接、管理员后台管理等功能。该系统采用前后端分离的架构,通过RESTful API进行数据交互,实现了系统的高效和灵活。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值