From f4274ad4f205d4f6ff8e82d490e61a70d3c16ef9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A5=9E=E7=A7=98=E4=BA=BA?= <3311118881@qq.com> Date: Tue, 8 Jul 2025 16:45:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20README.md=EF=BC=8C?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=90=8E=E7=AB=AF=20Redis=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=EF=BC=8C=E5=89=8D=E7=AB=AF=E5=A2=9E=E5=8A=A0=20Hero?= =?UTF-8?q?=20UI=20=E5=92=8C=E7=99=BE=E5=BA=A6=E7=BB=9F=E8=AE=A1=EF=BC=8C?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E9=A1=B9=E7=9B=AE=E7=89=88=E6=9C=AC=E4=B8=BA?= =?UTF-8?q?=203.0=EF=BC=8C=E4=BC=98=E5=8C=96=E6=96=87=E6=A1=A3=E7=BB=93?= =?UTF-8?q?=E6=9E=84=E5=92=8C=E5=86=85=E5=AE=B9=EF=BC=9B=E5=90=8C=E6=97=B6?= =?UTF-8?q?=E7=AE=80=E5=8C=96=E4=BB=A3=E7=A0=81=E5=9D=97=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E7=9A=84=E5=AE=9A=E4=B9=89=EF=BC=8C=E6=8F=90=E5=8D=87=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E5=8F=AF=E8=AF=BB=E6=80=A7=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 56 +++++++------------------ src/app/article/components/MD/index.tsx | 9 +--- 2 files changed, 17 insertions(+), 48 deletions(-) diff --git a/README.md b/README.md index ddbf594..8ced168 100755 --- a/README.md +++ b/README.md @@ -25,10 +25,10 @@ 🛠️ **技术架构:** -前端:React **19**、**Next.js 15**、**TailwindCSS 4**、TypeScript、Zustand、Motion React、React Form Hooks、Echarts、Antd、Scss、Vercel、Docker +前端:**React 19**、**Next.js 15**、**TailwindCSS 4**、TypeScript、Zustand、Motion React、React Form Hooks、Echarts、Hero UI、Antd UI、Scss、Vercel、Docker、百度统计、高德地图 -后端:**Spring Boot**、Mybatis Plus、MySQL、X File Storage、Swagger、Docker +后端:**Spring Boot**、Mybatis Plus、Redis、MySQL、Docker、X File Storage、Swagger ❤️ **项目初衷:** @@ -42,7 +42,9 @@ ### 前端 这里只演示部分前端界面,具体大家可以自行查看 **->** [https://liuyuyang.net](https://liuyuyang.net) + ![首页](https://bu.dusays.com/2024/10/28/671f7a44631d7.png) + ![足迹](https://bu.dusays.com/2024/09/17/66e97036dddcb.png) @@ -50,51 +52,20 @@ ### 控制端 ![数据分析](https://bu.dusays.com/2024/09/17/66e97035726ae.png) + ![文件系统](https://bu.dusays.com/2024/09/17/66e97031cd456.png) ## 项目部署 -官方文档:[[https://docs.liuyuyang.net/docs/项目部署/前端.html](https://docs.liuyuyang.net/docs/项目部署/1Panel.html)](https://docs.liuyuyang.net/docs/项目部署/1Panel.html) - - - -## 项目结构 - -``` -├── public // 存放公共资源 -├── src // 核心源码 -│ ├── api // 所有API接口 -│ ├── app -│ │ ├── error.tsx // 自定义错误页 -│ │ ├── favicon.ico // 项目图标 -│ │ ├── layout.tsx // 网站布局 -│ │ ├── loading.tsx // 自定义加载页 -│ │ ├── not-found.tsx // 自定义404页 -│ │ ├── page.tsx // 首页 -│ ├── assets // 存放项目所有资源 -│ │ ├── font -│ │ ├── image -│ │ └── svg -│ ├── components // 公共组件 -│ ├── stores // 数据全局共享 -│ ├── styles // 全局样式 -│ ├── types // 全局类型 -│ └── utils // 通用方法 -├── package-lock.json -├── package.json -├── postcss.config.mjs -├── tailwind.config.ts -└── tsconfig.json -``` - +官方文档:[https://docs.liuyuyang.net/docs/项目部署/1Panel.html](https://docs.liuyuyang.net/docs/项目部署/1Panel.html) ## 开源地址 -### 2.0 最新版(Nextjs + Spring Boot) +### 3.0 最新版(Nextjs + Spring Boot) 前端:[LiuYuYang01/ThriveX-Blog (github.com)](https://github.com/LiuYuYang01/ThriveX-Blog) @@ -151,19 +122,22 @@ ## ThriveX 交流群 🔥 -加微信:`liuyuyang2023` 记得备注:拉群 +大家在部署时遇到任何问题欢迎加入官方交流群进行探索 + +加微信:`liuyuyang2023` 记得备注:**拉群** ![微信](https://bu.dusays.com/2025/06/03/683e96eb43ad8.jpg) -## 技术支持 -项目部署 + `3` 天答疑服务 一口价 `200`,不议价哦。 +# 常见疑惑 -不过我不太提倡,因为我时间比较忙。大家可以在上述找到我的微信进入官方交流群,在我或热心网友闲的时候也会免费帮忙解决问题的 +下面总结一些大家常问的疑惑 +## 为什么会想到开发这个项目? +**问:** 为什么会想到开发这个项目? # 常见疑惑 下面总结一些大家常问的疑惑 @@ -247,4 +221,4 @@ ## 后端 1. 约束指定域名才能调用后端接口 -2. 对外开放的 post 接口做个频率限制 +2. 对外开放的 post 接口做个频率限制 \ No newline at end of file diff --git a/src/app/article/components/MD/index.tsx b/src/app/article/components/MD/index.tsx index da8bce3..920ec46 100755 --- a/src/app/article/components/MD/index.tsx +++ b/src/app/article/components/MD/index.tsx @@ -82,13 +82,7 @@ const ContentMD = ({ data }: Props) => { } // 代码块组件,带行号、折叠、复制 - const CodeBlock = ({ - language, - value, - }: { - language: string; - value: string; - }) => { + const CodeBlock = ({ language, value }: { language: string; value: string }) => { const [expanded, setExpanded] = useState(false); const isLong = value.split("\n").length > 10; @@ -98,6 +92,7 @@ const ContentMD = ({ data }: Props) => { return hljs.highlight(value, { language }).value.split("\n"); } } catch { } + return hljs.highlightAuto(value).value.split("\n"); }, [value, language]);