Learn Nuxt with a Collection of 100+ Tips!

层级

Nuxt 提供了一个强大的系统,允许你扩展默认的文件、配置等等。

Nuxt 的核心功能之一是层级和扩展支持。你可以通过扩展默认的 Nuxt 应用来复用组件、工具和配置。层级结构与标准的 Nuxt 应用几乎相同,这使得它们容易编写和维护。

使用场景

  • 使用 nuxt.configapp.config 跨项目共享可重用的配置预设
  • 使用 components/ 目录创建组件库
  • 使用 composables/utils/ 目录创建实用工具和组合库
  • 创建 Nuxt 模块预设
  • 跨项目共享标准设置
  • 创建 Nuxt 主题
  • 通过实现模块化架构和支持领域驱动设计(DDD)模式来增强代码组织,在大型项目中使用。

用法

默认情况下,位于 ~/layers 目录中的项目中的任何图层将自动注册为项目中的图层

图层自动注册是在 Nuxt v3.12.0 中引入的

此外,您可以通过在 nuxt.config 文件中添加 extends 属性来扩展图层。

nuxt.config.ts
export default defineNuxtConfig({
  extends: [
    '../base',                     // 从本地层级扩展
    '@my-themes/awesome',          // 从已安装的 npm 包扩展
    'github:my-themes/awesome#v1', // 从 git 仓库扩展
  ]
})

如果你从一个私有的 GitHub 仓库扩展,你还可以传递一个身份验证令牌:

nuxt.config.ts
export default defineNuxtConfig({
  extends: [
    // 每个层级的配置
    ['github:my-themes/private-awesome', { auth: process.env.GITHUB_TOKEN }]
  ]
})

Nuxt 使用 unjs/c12unjs/giget 来扩展远程层级。详细信息和所有可用选项请查阅文档。

层级编写指南 中阅读更多关于层级的内容。
观看来自 Learn Vue 的视频,了解关于 Nuxt 层级的内容。
观看来自 Alexander Lichter 的视频,了解关于 Nuxt 层级的内容。

示例

Content Wind Theme

一个轻量级的 Nuxt 主题,用于构建基于 Markdown 的网站。由 Nuxt Content、TailwindCSS 和 Iconify 提供支持。