---
title: "程序化使用"
description: "Nuxt Kit 提供了一组实用工具，帮助你以编程方式使用 Nuxt。这些函数允许你加载 Nuxt、构建 Nuxt 以及加载 Nuxt 配置。"
canonical_url: "https://nuxt.zhcndoc.com/docs/3.x/api/kit/programmatic"
---
# 程序化使用

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

程序化使用在你想以编程方式使用 Nuxt 时非常有用，例如构建一个 [CLI 工具](https://github.com/nuxt/cli) 或 [测试工具](https://github.com/nuxt/nuxt/tree/main/packages/test-utils)。

## `loadNuxt`

以编程方式加载 Nuxt。它将加载 Nuxt 配置，实例化并返回一个包含 Nuxt 实例的 Promise。

### 类型

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

### 参数

**`loadOptions`**：加载 Nuxt 的条件。`loadNuxt` 底层使用了 [`c12`](https://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](https://github.com/nuxt/nuxt/tree/main/packages/vite) 或 [@nuxt/webpack-builder](https://github.com/nuxt/nuxt/tree/main/packages/webpack)）来打包应用程序。

### 类型

```ts
function buildNuxt (nuxt: Nuxt): Promise<any>
```

### 参数

**`nuxt`**：要构建的 Nuxt 实例。可以通过调用 `useNuxt()` 从上下文中获取。

## `loadNuxtConfig`

加载 Nuxt 配置。它将返回一个带有配置对象的 Promise。

### 类型

```ts
function loadNuxtConfig (options: LoadNuxtConfigOptions): Promise<NuxtOptions>
```

### 参数

**`options`**：传入 [`c12`](https://github.com/unjs/c12#options) `loadConfig` 调用的选项。

## `writeTypes`

生成 `tsconfig.json` 并写入项目的 buildDir 目录。

### 类型

```ts
function writeTypes (nuxt?: Nuxt): void
```

### 参数

**`nuxt`**：要构建的 Nuxt 实例。可以通过调用 `useNuxt()` 从上下文中获取。

---

- [源码](https://github.com/nuxt/nuxt/tree/main/packages/kit/src/loader)


## Sitemap

See the full [sitemap](https://nuxt.zhcndoc.com/sitemap.md) for all pages.
