---
title: "功能"
description: "启用或禁用可选的 Nuxt 功能，解锁更多可能性。"
canonical_url: "https://nuxt.zhcndoc.com/docs/3.x/guide/going-further/features"
---
# 功能

> 启用或禁用可选的 Nuxt 功能，解锁更多可能性。

Nuxt 的某些功能是基于选择性启用的，或者可以根据您的需求禁用。

## `features`

### devLogs

在开发时将服务器日志流式传输到客户端。这些日志可以在 `dev:ssr-logs` 钩子中处理。

默认情况下，在开发环境（测试模式未激活时）启用此功能。

如果设置为 `silent`，日志将不会打印到浏览器控制台。

```ts [nuxt.config.ts]
export default defineNuxtConfig({
  features: {
    devLogs: true,
  },
})
```

### inlineStyles

渲染 HTML 时内联样式。当前仅在使用 Vite 时可用。

您也可以传入一个函数，该函数接收一个 Vue 组件的路径，并返回一个布尔值，指示是否为该组件内联样式。

默认值为 `(id) => id.includes('.vue')`。

```ts [nuxt.config.ts]
export default defineNuxtConfig({
  features: {
    inlineStyles: false, // 或一个用于决定内联的函数
  },
})
```

### noScripts

关闭 Nuxt 脚本和 JavaScript 资源提示的渲染。也可以在 `routeRules` 中进行更细粒度的配置。

您也可以在 `routeRules` 中更细粒度地禁用脚本。

如果设置为 'production' 或 `true`，仅在生产模式下禁用 JavaScript。如果设置为 'all'，则在开发和生产模式下均禁用 JavaScript。

```ts [nuxt.config.ts]
export default defineNuxtConfig({
  features: {
    noScripts: true, // 或 'production' | 'all' | false
  },
})
```

## `future`

还有一个 `future` 命名空间，用于提前选择将来版本（可能是重大版本）中变成默认的新特性。

### compatibilityVersion

启用对 Nuxt 功能或标志的早期访问。

将 `compatibilityVersion` 设置为 `5`，会更改 Nuxt 配置中的默认值，以选择启用 Nuxt v5 行为，包括启用 [Vite Environment API](https://nuxt.zhcndoc.com/docs/3.x/guide/going-further/experimental-features#viteenvironmentapi)。

```ts
export default defineNuxtConfig({
  future: {
    compatibilityVersion: 5,
  },
})
```

::read-more{to="https://nuxt.com/docs/4.x/getting-started/upgrade#testing-nuxt-5"}
详细了解如何测试 Nuxt 5。
::

### multiApp

启用对实验性多应用支持的早期访问。您可以关注 [追踪问题 #21635](https://github.com/nuxt/nuxt/issues/21635) 了解 Nuxt 多应用支持的进展。

```ts [nuxt.config.ts]
export default defineNuxtConfig({
  future: {
    multiApp: true,
  },
})
```

### typescriptBundlerResolution

启用 TypeScript 的“Bundler”模块解析模式，这是 Nuxt 和 [Vite](https://vite.dev/guide/performance#reduce-resolve-operations) 等框架推荐的设置。

使用现代带有 `exports` 的库时，能提升类型支持。

详见 [TypeScript 官方 pull request](https://github.com/microsoft/TypeScript/pull/51669)。

您也可以设置为 false 使用旧的“Node”模式，这也是 TypeScript 的默认设置。

```ts [nuxt.config.ts]
export default defineNuxtConfig({
  future: {
    typescriptBundlerResolution: false,
  },
})
```


## Sitemap

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