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
随机推荐
- drf过滤和排序及异常处理的包装
过滤和排序(4星) 查询所有才需要过滤(根据过滤条件),排序(按某个规律排序) 使用前提: 必须继承的顶层类是GenericAPIView 内置过滤类 内置过滤类使用,在视图类中配置,是模糊查询 使用 ...
- 算法题——Cantor表
题目介绍 描述 现代数学的著名证明之一是 Georg Cantor 证明了有理数是可枚举的.他是用下面这一张表来证明这一命题的: 1/1, 1/2 , 1/3, 1/4, 1/5, - 2/1, 2/ ...
- 微信小程序一些标签
wxml标签 一.视图容器(View Container): 二.基础内容(Basic Content) 标签名 说明 标签名 说明 view 视图容器 icon 图标 scroll-view ...
- Hoo Smart Chain 万物生长计划火热报名中,可视化公链迸发勃勃生机
在DeFi越来越趋向同质化和静态化时,Hoo Smart Chain决定充当破局者,宣布决定All In元宇宙,并于2022年3月份开启面向全球去中心化开发者的奖励计划--「万物生长计划」 目前Ter ...
- 计算属性、侦听属性、局部与全局组件使用、组件通信(父子互传)、ref属性、动态组件和keep-alive、插槽
今日内容概要 计算属性 侦听属性 局部组件和全局组件 组件通信之父传子 组件通信之子传父 ref属性(组件间通信) 动态组件和keep-alive 插槽 内容详细 1.计算属性 # 插值的普通函数,只 ...
- 2021.08.01 P4359 伪光滑数(二叉堆)
2021.08.01 P4359 伪光滑数(二叉堆) [P4359 CQOI2016]伪光滑数 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 若一个大于 11 的整数 MM ...
- MySQL进阶之表的增删改查
我的小站 修改表名 ALTER TABLE student RENAME TO stu; TO可以省略. ALTER TABLE 旧表名 RENAME 新表名; 此语句可以修改表的名称,其实一般我们在 ...
- cookie、sessionStorage、localStorage的区别?
数据存储位置 三者都是存储在游览器本地的 区别在于cookie是服务器端写入的,而sessionStorage.localStorage是由前端写入的 生命周期 cookie的生命周期是由服务器端写入 ...
- 小白必看:零基础安装Linux系统(超级详细)
我们以最新发布的CentOS 8.1为例,学习下如何安装Linux系统 准备工作: 1.一台可以访问互联网的电脑 2.VMware Workstation安装包 3.CentOS8.1镜像(CentO ...
- call()、apply()、arguments
一.call(),apply() 1.作为函数对象(指函数方法名,不带括号)的方法,需要通过函数对象调用:当对函数调用这两个方法时都会调用函数执行. <script> // 这个函数中,f ...