2021-10-14 nuxt3 更新
上次关注nuxt还是因为 nuxt 支持 composition-api,在当时的分享里 nuxt3看起来遥遥无期,首先开发工作是保密不开源的,时间表也不确定(更新:有时间表了看下面),一下支到了 2021 年的某个时间点,要知道当时 vue3 已经经历过 beta/rc/release 了,展望 vue3 的 ssr 方案居然没nuxt
下图是之前的计划:
最近看到,nuxt github 讨论区还是有一些进展的。首先是先 重构了网站,顺便做一个做网站的工具 docus,大雾。他们搞了一个新网站,可以去链接里去看信息https://github.com/nuxt/nuxt.js/discussions/9535。
网站撇开先不说,讨论区里提到了 nuxt3 公测计划,2021年9月公开测试。 不准,看下面。
没有时间表
更新: 2021-09-16 给出时间表了,10月12日。网址也更新了 https://nuxtjs.org/v3/
- 2021-07 内侧
- 2021-09 公测 - 看起来推迟了一个月
- 2021 第四季度 稳定版,生产可用
特点:
- lighter 更轻量,开箱可用,体积更小13kb
- faster 更快,分割、通过 h3 驱动,一个非常mini的http框架
- hybrid 增量静态生成ISR 等其他高级模式(next那一套)
- suspense 导航之前或之后获取任何组件的数据
- composition api
- nuxt cli 全新0依赖
- nuxt devtools
- nuxt kit 模块兼容nuxt2/3
- webpack5 构建更快、速度更小,无需配置
- vite(beta)
- vue3
- typescript
还搞了一个新的SSR引擎 Nitro
,这个东西的存在(看起来和next似的)是为了全栈,提供后端能力。
有 rollup/node workers 驱动hmr和上下文隔离。也有api能力。
{
"dependencies": {
"nuxt3": "^0.10.0-27145291.91c6ef5"
}
}
npx nuxt dev
简单看一下 node_modules 调用链,可以一路找到 node_modules/nuxi/dist/chunks/index.js#_main
函数,我们对 nuxt dev
进行断点调试。
解析的过程略,就说点关键的:
- command = dev
- showBanner
- commands.dev
/nuxi/dist/chunks/dev.js
- dev.js#dev.invoke
npx nuxi dev [rootDir] [—clipboard] [—open, -o]
npx nuxi init nuxt3-app # 启动项目,这时候会从 github 拉代码
pnpm i
pnpm run dev -o