通过 100+ 技巧集合学习 Nuxt!

程序化用法

Nuxt 工具包提供了一系列实用工具,帮助你以程序化方式使用 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 在底层使用了 c12,因此它接受与 c12.loadConfig 相同的选项,以及一些额外的选项

  • dev (可选)
    类型: boolean
    默认值: false
    如果设置为 true,Nuxt 将以开发模式加载。
  • ready (可选)
    类型: boolean
    默认值: true
    如果设置为 true,Nuxt 将在 loadNuxt 调用后准备就绪。 如果设置为 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() 调用从上下文中检索。