惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

阮一峰的网络日志
阮一峰的网络日志
D
Darknet – Hacking Tools, Hacker News & Cyber Security
S
Schneier on Security
The Last Watchdog
The Last Watchdog
Cyberwarzone
Cyberwarzone
S
Securelist
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
Cyber Attacks, Cyber Crime and Cyber Security
L
Lohrmann on Cybersecurity
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 司徒正美
The Cloudflare Blog
V
V2EX
博客园_首页
博客园 - 聂微东
Vercel News
Vercel News
人人都是产品经理
人人都是产品经理
G
GRAHAM CLULEY
T
Tenable Blog
Last Week in AI
Last Week in AI
Y
Y Combinator Blog
L
LINUX DO - 最新话题
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
SecWiki News
SecWiki News
博客园 - 三生石上(FineUI控件)
S
Secure Thoughts
N
News | PayPal Newsroom
T
The Blog of Author Tim Ferriss
The GitHub Blog
The GitHub Blog
T
Troy Hunt's Blog
博客园 - 【当耐特】
Forbes - Security
Forbes - Security
H
Hacker News: Front Page
A
About on SuperTechFans
B
Blog RSS Feed
Engineering at Meta
Engineering at Meta
MongoDB | Blog
MongoDB | Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
罗磊的独立博客
D
DataBreaches.Net
P
Privacy & Cybersecurity Law Blog
Schneier on Security
Schneier on Security
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Google DeepMind News
Google DeepMind News
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Jina AI
Jina AI
D
Docker
P
Proofpoint News Feed

sjdhome

sjdhome.com 2025 年度总结 | sjdhome 我的 2024 年 | sjdhome 我的 2024 年 | sjdhome sjdhome.com 制度与利益 | sjdhome 解决 Windows PPPoE 连接在系统睡眠后消失 | sjdhome 解决 Windows PPPoE 连接在系统睡眠后消失 | sjdhome 解决 Next.js build 完成后卡住的问题 | sjdhome 解决 Next.js build 完成后卡住的问题 | sjdhome 实现 WSL 2 开机免登录自动启动 | sjdhome 实现 WSL 2 开机免登录自动启动 | sjdhome 我的 2023 年 | sjdhome 我的 2023 年 | sjdhome 在 Windows 上启用 IP 转发 在 Windows 上启用 IP 转发 迁移到 Next.js | sjdhome 评论功能正式启用 | sjdhome 评论功能正式启用 | sjdhome 解决 GNOME 桌面环境下 Chromium 系浏览器全屏时有横线闪烁 解决 GNOME 桌面环境下 Chromium 系浏览器全屏时有横线闪烁 解决修改 Bash Prompt 后翻阅历史命令时显示错位 | sjdhome 解决修改 Bash Prompt 后翻阅历史命令时显示错位 | sjdhome 如何手动安装 rust-src | sjdhome 如何手动安装 rust-src | sjdhome 成瘾游戏的属性 | sjdhome 成瘾游戏的属性 | sjdhome 《可塑性记忆》观后感 | sjdhome 时光荏苒的失落 | sjdhome 《可塑性记忆》观后感 | sjdhome 时光荏苒的失落 | sjdhome H3C Magic RC3000 的相关信息 | sjdhome H3C Magic RC3000 的相关信息 | sjdhome Hello world | sjdhome Hello world | sjdhome
迁移到 Next.js | sjdhome
sjdhome · 2023-10-20 · via sjdhome

历经多次思想斗争,最终我将整个网站迁移到以 Next.js 为主的技术栈。

为什么要迁移到 Next.js

根据 Hello world 文章中所述,我的网站之前完全是纯静态 HTML 驱动的。 这种方式在网站内容不多的时候还能接受,但是随着网站内容的增加,维护起来就越来越麻烦。每一个 CSS 样式的变动都会带来灾难式的维护体验。

很久之前,我就已经学过 React.js,但出于复杂度控制,我没有把它用到我的网站上。但是随着网站内容的增加,我不得不考虑使用 React.js 来管理网站的内容。为了防止出现 React.js 项目选型的复杂度控制问题,我选择了 Next.js。

迁移过程

看着自己的网站,然后仿造出一个一模一样的网站真是一种奇特的体验,至少在失去耐心之前。所以这一迁移过程持续了很长时间。Next.js 13 的 App Router 还改变了原定的就地渲染 Markdown 计划,现在必须将文章内容单独做一个后端 API,不过这增强了网站的可扩展性。

2024 年 4 月 13 日补充:现在已经转向读取本地 Markdown 文章然后静态生成的方法了,想来以前还是 naive 了。有了后端,维护起来更麻烦了。

迁移中我还采用了 Tailwind CSS 技术,避免了以前纠结 CSS 类应该取什么名字的问题。

2024 年 4 月 13 日补充:现在使用 CSS Module 技术。CSS Module 和 Tailwind CSS 相比互有优劣,但我认为 CSS Module 更加接近原汁原味的 CSS 编写方式。

迁移后的网站

整体上没有大的改动,只有一些细节上的修改。

对于中国大陆用户来说,网站的访问速度应该会变得更慢了😂,这是因为现在网站托管在 Cloudflare Pages 上。感谢 Cloudflare 提供的免费服务。

2024 年 4 月 13 日补充:现在部署在 Vercel,仍然使用 CloudFlare 做 CDN(对国内来说依然是减速 😂)。