Next.js 构建博客之打包SSG
Next.js项目通过SSG静态导出实现博客部署。本文以实际项目为例,讲解generateStaticParams枚举动态路由参数、配置output:'export'、使用generateMetadata设置动态标题,以及处理SSG限制的注意事项。
Next.js项目通过SSG静态导出实现博客部署。本文以实际项目为例,讲解generateStaticParams枚举动态路由参数、配置output:'export'、使用generateMetadata设置动态标题,以及处理SSG限制的注意事项。
文章探讨如何基于Next.js 14 App Router构建博客系统,详细介绍了将GitHub Issues作为数据源、利用layout布局复用、动态路由实现文章详情页、以及使用bytemd渲染Markdown内容的技术实践。
作为Next.js博客搭建系列的开篇,本文聚焦于资源抓取环节。详细讲解如何利用pnpm workspace构建monorepo项目,通过GitHub API递归拉取issues和labels数据,并处理分页与令牌认证。适合关注静态博客实现细节的开发者。
文章记录了多次前端面试中的技术问题,涵盖 Promise 机制、事件循环、框架实现细节、性能优化和工程化实践,反映了对底层原理和架构设计的深度探讨。
本文深入解析了 resso 状态管理库的实现机制,通过 Proxy 劫持对象属性,结合 useSyncExternalStore 和 unstable_batchedUpdates 实现高效的响应式更新,探讨了其在 React 项目中的轻量级替代方案。
深入解析Koa中间件洋葱模型的实现原理,通过源码分析koa-compose库如何利用递归与Promise将中间件串联,并解释异步执行顺序(1,3,4,2)背后的微任务调度机制。
ES2023 为 JavaScript 数组引入了 toReversed、toSorted、toSpliced 和 with 方法,这些非破坏性方法在保持原数组不变的同时,提供与 reverse、sort、splice 等传统方法相同的功能,旨在简化不可变数据操作并提升代码可读性。
文章探讨了传统模板引擎在语法提示、类型检查和学习成本上的不足,并提出了使用 JSX 作为替代方案。通过 preact-render-to-string 库将 JSX 转换为字符串,结合 TypeScript 和构建工具如 webpack,实现在 Node.js 环境中编写类型安全且开发体验更优的模板。
本文探讨在 Vue 中基于 ahooks 思路,通过重构 EventEmitter 类实现一个支持自动清理的 useEventEmitter Hook,以简化组件间发布订阅模式,避免手动管理依赖和卸载。
在 pnpm monorepo 架构中,TypeScript 项目常因路径别名问题导致导入时包含冗余的 `src` 目录。本文探讨如何利用 Node.js 的 `exports` 字段,通过配置子路径映射来简化导入路径,并解决相关的 TypeScript 类型定义和模块解析问题。