程序化使用

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
}

参数

loadOptions

类型: LoadNuxtOptions

默认值: {}

Nuxt 的加载条件。loadNuxt 在底层使用 c12https://github.com/unjs/c12),所以它接受与 c12.loadConfig 相同的选项,并有一些额外的选项:

  • dev(可选)
    类型: boolean
    默认值: false
    如果设置为 true,Nuxt 将在开发模式下加载。
  • ready(可选)
    类型: boolean
    默认值: true
    如果设置为 true,在调用 loadNuxt 之后 Nuxt 将准备好使用。如果设置为 false,您将需要调用 nuxt.ready() 来确保 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

传递给 c12 loadConfig 调用的选项。

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() 调用检索。