通过 100 多个技巧的集合学习 Nuxt!

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',                     // Extend from a local layer
    '@my-themes/awesome',          // Extend from an installed npm package
    'github:my-themes/awesome#v1', // Extend from a git repository
  ]
})

如果您是从私有 GitHub 存储库扩展,您还可以传递身份验证令牌。

nuxt.config.ts
export default defineNuxtConfig({
  extends: [
    // per layer configuration
    ['github:my-themes/private-awesome', { auth: process.env.GITHUB_TOKEN }]
  ]
})

Nuxt 使用 unjs/c12unjs/giget 来扩展远程层。查看文档以获取更多信息和所有可用选项。

请在 层编写指南 中阅读有关层的更多信息。
观看 Learn Vue 提供的关于 Nuxt 层的视频。
观看 Alexander Lichter 提供的关于 Nuxt 层的视频。

示例

内容风主题

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