Nuxt3 中文课程 《实战全栈开发简书》.

Programmatic Usage

Nuxt Kit 提供了一组实用工具,帮助你以编程方式使用 Nuxt。这些函数允许你加载 Nuxt、构建 Nuxt 和加载 Nuxt 配置。

编程式使用在你想以编程方式使用 Nuxt 时非常有用,例如构建 CLI 工具 或者 测试工具

loadNuxt

以编程方式加载 Nuxt。它会加载 Nuxt 配置,实例化并返回带有 Nuxt 实例的 Promise。

类型

async function loadNuxt (loadOptions?: LoadNuxtOptions): Promise<Nuxt>

interface LoadNuxtOptions extends LoadNuxtConfigOptions {
  dev?: boolean
  ready?: boolean
  rootDir?: string
  config?: LoadNuxtConfigOptions['overrides']
}

参数

loadOptions

类型: LoadNuxtOptions

默认值: {}

加载 Nuxt 的条件。loadNuxt 在内部使用了 c12,因此接受与 c12.loadConfig 相同的选项,还有一些额外的选项:

  • dev(可选)
    类型: boolean
    默认值: false
    如果设置为 true,Nuxt 将以开发模式加载。
  • ready(可选)
    类型: boolean
    默认值: true
    如果设置为 true,在调用 loadNuxt 后,Nuxt 将准备好使用。如果设置为 false,你需要调用 nuxt.ready() 来确保 Nuxt 已经准备好使用。
  • rootDir(可选)
    类型: string
    默认值: null
    已弃用: 请使用 cwd 选项代替。
    Nuxt 项目的根目录。
  • config(可选)
    类型: LoadNuxtConfigOptions['overrides']
    默认值: {}
    已弃用: 请使用 overrides 选项代替。
    Nuxt 配置的覆盖项。

buildNuxt

以编程方式构建 Nuxt。它会调用构建器(当前为 @nuxt/vite-builder 或者 @nuxt/webpack-builder)来打包应用程序。

类型

async function buildNuxt (nuxt: Nuxt): Promise<any>

参数

nuxt

类型: Nuxt

必填: true

要构建的 Nuxt 实例。可以通过上下文中的 useNuxt() 调用来获取。

loadNuxtConfig

加载 Nuxt 配置。它会返回带有配置对象的 Promise。

类型

async function loadNuxtConfig (options: LoadNuxtConfigOptions): Promise<NuxtOptions>

参数

options

类型: LoadNuxtConfigOptions

必填: true

传递给 c12loadConfig 调用的选项。

writeTypes

生成 tsconfig.json 并将其写入项目的 buildDir。

类型

function writeTypes (nuxt?: Nuxt): void

interface Nuxt {
  options: NuxtOptions
  hooks: Hookable<NuxtHooks>
  hook: Nuxt['hooks']['hook']
  callHook: Nuxt['hooks']['callHook']
  addHooks: Nuxt['hooks']['addHooks']
  ready: () => Promise<void>
  close: () => Promise<void>
  server?: any
  vfs: Record<string, string>
  apps: Record<string, NuxtApp>
}

参数

nuxt

类型: Nuxt

必填: true

要构建的 Nuxt 实例。可以通过上下文中的 useNuxt() 调用来获取。