我們很高興宣佈 Nuxt UI v3 的釋出,這是我們 UI 庫的全面重新設計,在可訪問性、效能和開發者體驗方面帶來了顯著改進。這次重大更新代表了我們團隊和社群超過 1500 次提交的辛勤工作、協作和創新。
🚀 徹底重構
Nuxt UI v3 代表著我們在為 Vue 和 Nuxt 開發者提供最全面的 UI 解決方案的旅程中邁出的重要一步。此版本已採用現代技術和最佳實踐從頭開始重建。
從 HeadlessUI 到 Reka UI
Reka UI 作為其核心,Nuxt UI v3 提供:
• 所有互動式元件的正確鍵盤導航
• 自動處理 ARIA 屬性
• 焦點管理開箱即用
• 螢幕閱讀器友好的元件開箱即用
這意味著您可以構建適用於所有人的應用程式,而無需成為可訪問性專家。
Tailwind CSS v4 整合
與 Tailwind CSS v4 的整合帶來了巨大的效能改進:
• 執行時快 5 倍,元件渲染最佳化
• 構建時間快 100 倍,得益於新的 CSS-first 引擎
• 更小的包大小,更高效的樣式
您的應用程式將感覺更靈敏,構建更快,併為您的使用者載入更快。
🎨 全新的設計系統
<!-- Before: Inconsistent color usage with duplicate dark mode classes -->
<div class="bg-gray-100 dark:bg-gray-800 p-4 rounded-lg">
<h2 class="text-gray-900 dark:text-white text-xl mb-2">User Profile</h2>
<p class="text-gray-600 dark:text-gray-300">Account settings and preferences</p>
<button class="bg-blue-500 text-white px-3 py-1 rounded mt-2">Edit Profile</button>
</div>
<!-- After: Semantic design tokens with automatic dark mode support -->
<div class="bg-muted p-4 rounded-lg">
<h2 class="text-highlighted text-xl mb-2">User Profile</h2>
<p class="text-muted">Account settings and preferences</p>
<UButton color="primary" size="sm" class="mt-2">Edit Profile</UButton>
</div>
我們新的顏色系統包括 7 個語義顏色別名:
顏色 | 預設 | 描述 |
---|---|---|
primary | blue | 表示品牌的原色。 |
secondary | blue | 補充原色的次要顏色。 |
success | green | 用於成功狀態。 |
info | blue | 用於資訊狀態。 |
warning | yellow | 用於警告狀態。 |
error | red | 用於表單錯誤驗證狀態。 |
neutral | slate | 用於背景、文字等的中性顏色。 |
這種方法使您的程式碼庫更易維護,UI 更一致——尤其是在團隊協作時。有了這些語義令牌,亮暗模式切換變得輕鬆,系統會自動處理每個主題的適當顏色值,而無需重複類定義。
💚 完整的 Vue 相容性
我們很高興將 Nuxt UI 的範圍擴充套件到 Nuxt 框架之外。透過 v3,Nuxt UI 和 Nuxt UI Pro 現在都可以在任何 Vue 專案中無縫執行,這意味著您可以:
• 在所有 Vue 專案中使用相同的元件
• 在任何 Vue 應用程式中受益於 Nuxt UI 的主題系統
• 在 Nuxt 之外享受自動匯入和 TypeScript 支援
• 在任何 Vue 專案中利用基本元件和高階 Pro 元件
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import ui from '@nuxt/ui/vite'
export default defineConfig({
plugins: [
vue(),
ui()
]
})
📦 滿足各種需求的元件
Nuxt UI v3 擁有 54 個核心元件、50 個 Pro 元件和 42 個 Prose 元件,為幾乎所有 UI 挑戰提供瞭解決方案:
• 資料展示:表格、圖表和視覺化,可適應您的資料
• 導航:選單、選項卡和麵包屑,直觀地引導使用者
• 反饋:Toast、警報和模態框,清晰地傳達資訊
• 表單:輸入、選擇器和驗證,簡化資料收集
• 佈局:網格、容器和響應式系統,精美地組織內容
每個元件都被設計成開箱即用的美觀,並在需要時可深度定製。
🔷 改進的 TypeScript 整合
我們徹底改進了 TypeScript 整合,其功能讓您更高效:
- 具有有用自動補全的完整型別安全
- 基於泛型的元件,實現靈活的 API
- 透過清晰一致的 API 實現型別安全的主題化
export default defineAppConfig({
ui: {
button: {
// Your IDE will show all available options
slots: {
base: 'font-bold rounded-lg'
},
defaultVariants: {
size: 'md',
color: 'error'
}
}
}
})
⬆️ 升級到 v3
我們準備了一份全面的遷移指南,幫助您從 v2 升級到 v3。雖然由於我們徹底的改造,存在破壞性更改,但我們努力使過渡儘可能順利。
🎯 開始使用
無論您是開始一個新專案還是升級現有專案,使用 Nuxt UI v3 都很容易:
# Create a new Nuxt project with Nuxt UI
npx nuxi@latest init my-app -t ui
pnpm add @nuxt/ui@latest
yarn add @nuxt/ui@latest
npm install @nuxt/ui@latest
bun add @nuxt/ui@latest
請訪問我們的文件以探索 Nuxt UI v3 中所有可用的元件和功能。
🙏 感謝
本次釋出代表了我們團隊和社群數千小時的工作。我們要感謝所有為使 Nuxt UI v3 成為現實做出貢獻的人。
我們很高興看到您將用 Nuxt UI v3 構建什麼!