概述
减少与Nuxt 3的差异,减轻迁移到Nuxt 3的负担。
如果你正在开始一个全新的Nuxt 3项目,请跳过本节并前往Nuxt 3安装。
Bridge是一个向前兼容层,通过安装和启用一个Nuxt模块,可以让你体验到许多新的Nuxt 3功能。
使用Nuxt Bridge,你可以确保你的项目(几乎)已经准备好迁移到Nuxt 3,并且可以逐步进行迁移。
第一步
升级Nuxt 2
确保你的开发服务器(nuxt dev
)没有在运行,删除任何包锁定文件(package-lock.json
和yarn.lock
),并安装最新的Nuxt 2版本:
package.json
- "nuxt": "^2.16.3"
+ "nuxt": "^2.17.0"
然后,重新安装你的依赖项:
yarn install
安装完成后,请确保开发和生产构建都正常工作,然后再继续。
安装Nuxt Bridge
将@nuxt/bridge-edge
作为开发依赖项进行安装:
yarn add --dev @nuxt/bridge@npm:@nuxt/bridge-edge
更新nuxt.config
请确保在你的配置文件中避免使用任何CommonJS语法,如module.exports
、require
或require.resolve
。它将很快被弃用和不受支持。
你可以使用静态import
、动态import()
和export default
来代替。还可以使用TypeScript,通过将文件重命名为nuxt.config.ts
,这也是可能和推荐的。
nuxt.config.ts
import { defineNuxtConfig } from '@nuxt/bridge'
export default defineNuxtConfig({
bridge: false
})
更新命令
nuxt
命令现在应该改为nuxt2
命令。
{
"scripts": {
- "dev": "nuxt",
+ "dev": "nuxt2",
- "build": "nuxt build",
+ "build": "nuxt2 build",
- "start": "nuxt start",
+ "start": "nuxt2 start"
}
}
尝试在这里运行一次nuxt2
。你会发现应用程序正常工作。
(如果'bridge'设置为false,则你的应用程序将像以前一样运行,不需要任何更改。)
升级步骤
使用Nuxt Bridge,可以逐步进行迁移到Nuxt 3。
下面的升级步骤
不需要一次完成。
从CommonJS迁移到ESM
Nuxt 3原生支持TypeScript和ECMAScript模块。请查看原生ES模块获取更多信息和升级方法。