大专入学:从心慌到松一口气,再到军训结束

把九月的三段记录合在一起:第一天的心慌与窘迫、第四天的缓和与自我调适、以及第十四天军训收尾。

超炫酷的赛博按钮和弹窗

超炫酷的赛博按钮和配套弹窗,从零开始,通过具体的代码示例,深入解析如何利用 CSS 的 clip-path 创造出独特的切角几何形态,并结合 @keyframes 和 transform 打造出令人惊叹的“Glitch”故障动画

我的Visual Studio Code配置和插件推荐

分享我的 VS Code 个性化配置与高效插件清单,涵盖主题美化、AI 辅助、Git 增强、前端开发利器等,助你打造丝滑又高效的编码环境。

允许世界与我不同

我曾以为成长是变得比别人更强、更对、更有品味。后来才发现,真正的成长,是终于能温柔地收回自己身上的尖刺,允许世界与我不同。这是一个关于放下与接纳的故事。

cn vs clsx:在 Tailwind CSS 项目中推荐 cn

深入探讨在 Tailwind CSS 项目中 `clsx` 和 `tailwind-merge` 的作用,并解释为什么将它们组合成 `cn` 工具函数是构建可维护、无样式冲突组件的最佳实践。

给VSCode添加使用标签包裹快捷键

手动在 VSCode 里包裹 HTML 代码?教你启用 Emmet 快捷键,一行配置实现高效标签包裹。

React 性能优化基础:useCallback、React.memo

React 性能优化基础:useCallback、React.memo

useMemo VS useState + useEffect:避免额外渲染

使用useMemo优化性能,避免因状态更新而触发额外的渲染

使用Vue给网站添加追番和游戏进度

在Nuxt中使用useFetch来从Bangumi API获取追番和游戏数据,然后使用Vue来展示这些数据。

为网站添加统计和分析并展示出来

使用 Umami 来统计网站数据并使用 API 展示

© 2025 shenley