核心特性
Nuxt.js 的设计哲学和关键技术特性
🚀 零配置启动
开箱即用的约定式配置,无需复杂配置即可开始开发
⚡️ 混合渲染
支持SSR、SSG、ISR、客户端渲染,按路由灵活配置
📁 自动路由
基于文件系统的路由,pages目录自动生成路由
🔧 自动导入
组合式API、组件、工具函数自动导入,无需手动import
📦 服务端API
内置Nitro服务器引擎,轻松创建API端点
🎨 模块生态
丰富的官方和社区模块,快速集成各种功能
生态系统
Nuxt.js 核心模块和官方工具
Nuxt UI
基于Tailwind CSS的UI组件库
Nuxt Content
基于文件的CMS,支持Markdown、YAML、CSV
Nuxt Image
图片优化组件,自动优化和懒加载
Nuxt Auth
认证模块,支持多种认证策略
快速入门
# 创建新项目
npx nuxi@latest init my-app
# 进入项目目录
cd my-app
# 安装依赖
npm install
# 启动开发服务器
npm run dev
# 构建生产版本
npm run build
# 预览生产版本
npm run preview
配置示例
// nuxt.config.ts
export default defineNuxtConfig({
// 应用配置
app: {
head: {
title: 'My Nuxt App',
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1' }
]
}
},
// 模块
modules: [
'@nuxt/ui',
'@nuxt/content',
'@pinia/nuxt'
],
// 路由规则(混合渲染)
routeRules: {
'/': { prerender: true },
'/api/**': { cors: true },
'/admin/**': { ssr: false }
},
// TypeScript配置
typescript: {
strict: true
},
// 开发工具
devtools: { enabled: true }
})
学习资源
与其他框架对比
vs Next.js
Nuxt专注于Vue生态,Next.js专注于React。Nuxt的自动导入和约定式配置更简洁。
vs Vue CLI
Vue CLI是纯客户端SPA工具,Nuxt提供SSR、SSG等现代渲染方案。