110 - 《手撕源码 06:Nuxt 3》

发布于 2022年5月8日

这篇偏笔记风格。

nuxt 3 基于 vue 3 和 vitest,目前是 rc.2,月下载量 78K,nuxt 官网还是 2,没有切换到 3。nuxt 3 的维护者有不少社区名人,包括 pi0、antfu 等。

工程化方面。

1、包管理用的 Yarn 3,还是第一次在流行库里看到 Yarn 3。日志非常清晰,分 Resolution、Fetch 和 Link 三个阶段
2、monorepo 任务管理用的 lerna,有点过时,lerna 都不维护了
3、源码构建用 unbuild(Star 500+),支持 dts 生成,支持 stub,支持打包依赖
4、文档基于还处于 beta 阶段的 docus 实现,有需要大家可以申请个 Early Access

源码组织方面。

1、分了 kit、nuxi、nuxt、schema、test-utils、vite 和 webpack 这些包
2、nuxi 提供命令行,nuxt 是核心引擎,kit 提供开发套件,schema 提供类型和默认配置
3、vite 和 webpack 分别提供两种构建方式,默认是 vite

依赖库方面。

1、命令行参数解析用 mri(Star 476,最近更新 2 年前)
2、color 库用 colorette(Star 1.4K)
3、日志用 consola(Star 3.7K),然后通过 consola.wrapConsole 代理 console 方法到 consola
4、winPath 处理用 pathe 代替 p

内容预览已结束

此内容需要会员权限。请先登录以查看完整内容。