从零用java实现 小红书 springboot vue uniapp (1)

前言

偶尔会用小红书发一些笔记 闲来无事 想自己实现一个小红书

正好可以学习一下 帖子 留言 im 好友 推送 等功能

下面我们就从零 开发一个小红书

后台依旧用我们的会员系统的脚手架
演示 http://120.26.95.195:8889/

客户端我们使用uniapp

我们首先对主页进行一个分解

顶部我们使用 gui-switch-navigation 进行菜单的选择

主体部分 我们使用瀑布流

参考了框架瀑布流的实现方式 我大概了解到

他把页面分成左右部分 左右各一个列表

所以获取到数据时我们需要转换成一个二维数组 再进行遍历操作

bash 复制代码
uni.app.get('/notes', null, '', (res => {
				if (res.code == 200) {
					let notes = res.data.records;

					var lArr = this.noteList[0];
					var rArr = this.noteList[1];
					//填充数组[此处的 notes 数据应该来自与api接口数据]
					//数据格式见 "/data/data.js"
					for (var i = 0; i < notes.length; i++) {
						if (i % 2 == 0) {
							lArr.push(notes[i]);
						} else {
							rArr.push(notes[i]);
						}
					}
					this.noteList = [lArr, rArr];
					......

后台的话我们创建notes表 进行生成

bash 复制代码
CREATE TABLE `business_note` (
  `NOTE_ID` varchar(32) NOT NULL COMMENT '笔记id',
  `NOTE_TITLE` varchar(255) DEFAULT NULL COMMENT '笔记标题',
  `NOTE_CONTENT` varchar(255) DEFAULT NULL COMMENT '笔记内容',
  `NOTE_CATEGORY` varchar(32) DEFAULT NULL COMMENT '类型id',
  `NOTE_CATEGORY_NAME` varchar(255) DEFAULT NULL COMMENT '笔记类型名',
  `NOTE_TYPE` tinyint(2) DEFAULT '1' COMMENT '1 图文 2视频  3文字',
  `AUTHOR_ID` varchar(32) DEFAULT NULL COMMENT '作者ID',
  `AUTHOR_AVATAR` varchar(255) DEFAULT NULL COMMENT '作者头像',
  `AUTHOR_NAME` varchar(255) DEFAULT NULL COMMENT '作者名字',
  `FIRST_PICTURE` varchar(255) DEFAULT NULL COMMENT '首图URL',
  `VERSION` bigint(10) DEFAULT '0' COMMENT '乐观锁字段',
  `DELETED` tinyint(2) DEFAULT '0' COMMENT '0正常 1删除',
  `CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间',
  `UPDATE_TIME` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  `IP_ADDRESS` varchar(255) DEFAULT NULL COMMENT 'ip地址',
  `IP_REAL_ADDRESS` varchar(255) DEFAULT NULL COMMENT '真实ip地址',
  `UP_COUNT` bigint(10) DEFAULT '0' COMMENT '点赞数',
  `STAR_COUNT` bigint(10) DEFAULT '0' COMMENT '收藏数',
  `NOTE_STATUS` tinyint(2) DEFAULT '0' COMMENT '0正常 1审核不通过 2限流',
  PRIMARY KEY (`NOTE_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='笔记表';

除了基础信息外 我们还添加了点赞数 收藏数 帖子状态用于后期对帖子的管理

由于用户管理还未开发 我们首页的数据先保持一致 后续根据用户推送相应内容

主页还需完善 滑动到底部刷新 等 后面进行完善

代码地址
https://gitee.com/ddeatrr/springboot_vue_xhs

相关推荐
Howrun7777 小时前
VSCode烦人的远程交互UI讲解
ide·vue.js·vscode
JH30738 小时前
SpringBoot 优雅处理金额格式化:拦截器+自定义注解方案
java·spring boot·spring
2501_916008898 小时前
全面介绍Fiddler、Wireshark、HttpWatch、SmartSniff和firebug抓包工具功能与使用
android·ios·小程序·https·uni-app·iphone·webview
webYin8 小时前
解决 Uni-App 运行到微信小程序时 “Socket合法域名校验出错” 问题
微信小程序·小程序·uni-app
Coder_Boy_9 小时前
技术让开发更轻松的底层矛盾
java·大数据·数据库·人工智能·深度学习
invicinble9 小时前
对tomcat的提供的功能与底层拓扑结构与实现机制的理解
java·tomcat
小迷糊的学习记录9 小时前
Vuex 与 pinia
前端·javascript·vue.js
较真的菜鸟9 小时前
使用ASM和agent监控属性变化
java
黎雁·泠崖9 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
利刃大大9 小时前
【Vue】Element-Plus快速入门 && Form && Card && Table && Tree && Dialog && Menu
前端·javascript·vue.js·element-plus