React与Koa一起打造一个功能丰富的全栈个人博客(业务篇)
前言
豆哥的个人博客又改版了,本版主要技术栈是前台用的React,后台用的Koa。博客改版的初衷是自己可以练练React(公司的项目部分要用React,我也没法啊,再说早晚得学)。本文主要介绍博客的业务逻辑,对技术方面不过多讲述。想了解技术的话,可以等我下一篇《技术篇》哦!好了,转入正题。
功能模块
登录注册
首页
文章详情
文章评论
发文章
发文章权限
圈子
发圈子
搜索文章
模块详解
登录注册
登录注册时,账号请输入大于3位小于7位,密码请输入大于6位小于13位。
首页
文章栏目分页展示,每页展示10条内容。文章内有图片的,在栏目上会根据条件显示,并根据文章的标签显示标签。
头部导航栏滚轮往上滑动显示,并固定在顶部。滚轮往下滑动隐藏。
文章详情
根据文章ID显示对应的文章题目、文章内容、文章标签。
文章评论
用户需登录注册后才可以在文章详情页下方评论,评论不计次数,但是限制字数100字以内。发表时带有内容以及时间。评论列表分页展示。头像是用户的第一个字符。
发文章
目前只有管理员才有发文章的权限,其他用户没有权限,会进入权限页面。
发文章权限
只有管理员才可以发文章,其他用户没有权限。其他用户可以点击返回首页。
圈子
用户可以发表自己的见解,后台会根据发表的内容进行判断,不准发表违法敏感内容。只有登录注册才会显示发表圈子的按钮。圈子列表分页展示。
发圈子
只要是登录注册的用户都可以发表圈子,可以发表图片以及文字,图片大小格式有限制,只能发表小于200KB的jpg或者png格式的图片。文字小于50字。最后。用户一天只能发3次圈子,次日重置。
更多内容请见原文,原文转载自:https://blog.csdn.net/weixin_44519496/article/details/118668981
React与Koa一起打造一个功能丰富的全栈个人博客(业务篇)的更多相关文章
- React与Koa一起打造一个仿稀土掘金全栈个人博客(技术篇)
本篇文章将分为前台角度与后台角度来分析我是怎么开发的.前台角度主要资源 react.js ant Design for-editor axios craco-less immutable react- ...
- koa+mysql+vue+socket.io全栈开发之数据访问篇
后端搭起大体的框架后,接着涉及到的就是如何将数据持久化的问题,也就是对数据库进行 CURD 操作. 关于数据库方案, mongodb 和 mysql 都使用过,但我选用的是 mysql,原因: 目前为 ...
- 如何实现一个 markdown 图片粘贴上传的博客后台系统
如何实现一个 markdown 图片粘贴上传的博客后台系统 js 实现 drag & drop / copy & paste image uploader MongoDB 设计文档对象 ...
- 一个 Vue & Node 的全栈小项目
约学 - 可以寻找一起自习的小伙伴的Web APP 一个基于 Vue & Node 的移动端全栈小项目 在线演示(请使用移动端查看效果) 源码地址: https://github.com/G- ...
- 【个人博客 hexo】一个小时就搭好属于自己的博客
对于经常需要发博客的小伙伴来说,拥有一个属于自己的博客网站,听起来是不是很酷. 今天我就来告诉大家,怎么搭建一个属于自己的博客网站,我们需要的就是使用hexo+github来搭建我们自己博客系统. 你 ...
- 发起一个开源项目:基于 .NET 的博客引擎 fluss
今天我们发起一个开源项目,它的名字叫 fluss,fluss 是 river 的德语. 百川归海,每一个博客就如一条河流,输入的是文字,流出的是知识,汇入的是知识的汪洋大海. 川流不息,fluss 是 ...
- koa+mysql+vue+socket.io全栈开发之web api篇
目标是建立一个 web QQ的项目,使用的技术栈如下: 后端是基于koa2 的 web api 服务层,提供curd操作的http接口,登录验证使用的是 json web token,跨域方案使用的是 ...
- 桌面远程连接阿里云服务器(windows)后丧失了双向文件复制粘贴功能的解决方案(第一条博客!)
近日应公司要求,需在windows服务器上架设一个交易中介软件. 过程之一:将软件压缩文件传到服务器上. 问题:在“运行”对话框通过输入'mstsc' 创建远程连接以后,出现本地桌面与服务器之间无法物 ...
- 一个关于AM335X比较全面的笔记博客
http://www.eefocus.com/marianna/blog/cate_18142_0.html
随机推荐
- java 竞赛常用方法
一,基本数据类型 1.int,float.double等转换为字符串用 String.valueOf方法 eg:double转换为String Double dtDouble=12.31354; St ...
- HCIE笔记-第十节-静态路由
协议 :标识 前方的目的网络 是通过什么协议形成的 优先级:代表形成路由的协议的优先级数值 [厂商规定] 开销值:代表该路由协议形成此路由时的开销 -- 不同的协议计算开销值的方式有区别(越小越优) ...
- Linux根目录下各文件目录的作用
bin 用户二进制可执行文件 boot 系统启动引导文件 dev[device] 系统中使用的外部设备,但不是放的外部设备的驱动.一个访问这些外部 ...
- 【面试普通人VS高手系列】Redis和Mysql如何保证数据一致性
今天分享一道一线互联网公司高频面试题. "Redis和Mysql如何保证数据一致性". 这个问题难倒了不少工作5年以上的程序员,难的不是问题本身,而是解决这个问题的思维模式. 下面 ...
- Django视图函数:CBV与FBV (ps:补充装饰器)
CBV 基于类的视图 FBV 基于函数的视图 CBV: 1 项目目录下: 2 urlpatterns = [ 3 path('login1/',views.Login.as_view()) #.as ...
- CPU缓存L1/L2/L3工作原理
点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! 一.前言 在过去的几年中,计算机处理器取得了相当大的进步 ...
- AspNetCore7.0源码解读之UseMiddleware
UseMiddlewareExtensions 前言 本文编写时源码参考github仓库主分支. aspnetcore提供了Use方法供开发者自定义中间件,该方法接收一个委托对象,该委托接收一个R ...
- GIT速查手册
一.GIT 1.1 简单配置 git是版本控制系统,与svn不同的是git是分布式,svn是集中式 配置文件位置 # 配置文件 .git/config 当前仓库的配置文件 ~/.gitconfig 全 ...
- 用Repo管理自己的本地仓库
AOSP使用Repo工具管理项目源码.而Repo工具则依赖一个名叫manifest的git仓库来记录Android源码中都包含哪些子仓库. 进入Android源码根目录下的.repo目录,可以看到ma ...
- 学习Java的第十六天——随机数
学习内容:随机数 1.GetEvenNum()方法 实例代码: package 数字处理类; public class MathRondom {public static int GetEvenNum ...