安装
要求
- React 18 或更高版本
- Tailwind CSS 3.4 或更高版本
- Framer Motion 11 或更高版本
自动安装
现在,使用 CLI 是启动 NextUI 项目的最简单方法。你可以通过 CLI 直接初始化项目并添加组件
npm install -g nextui-cli
nextui init my-nextui-app
系统会提示你配置项目
◇ Select a template (Enter to select)│ ● App (A Next.js 14 with app directory template pre-configured with NextUI (v2) and Tailwind CSS.)│ ○ Pages (A Next.js 14 with pages directory template pre-configured with NextUI (v2) and Tailwind CSS.)│ ○ Vite (A Vite template pre-configured with NextUI (v2) and Tailwind CSS.)
安装依赖项以启动本地服务器
cd my-nextui-app && npm install
启动本地服务器
npm run dev
NextUI 项目准备好开发后,可以使用 CLI 添加各个组件。例如,添加按钮组件
nextui add button
此命令会将 Button 组件添加到项目并管理所有相关依赖项。
你还可以一次添加多个组件
nextui add button input
或者,你可以通过运行以下命令添加主库 @nextui-org/react
nextui add --all
如果你省略组件名称,CLI 会提示你选择要添加的组件。
? Which components would you like to add? › - Space to select. Return to submitInstructions:↑/↓: Highlight option←/→/[space]: Toggle selection[a,b,c]/delete: Filter choicesenter/return: Complete answerFiltered results for: Enter something to filter◯ accordion◯ autocomplete◯ avatar◯ badge◯ breadcrumbs◉ button◯ card◯ checkbox◯ chip◯ code
手动安装
如果你不想使用 CLI,可以尝试全局安装或单独安装,在项目中设置 NextUI
全局安装
使用全局安装是开始使用 NextUI 最简单的方法,这意味着所有组件都从单个包导入。
按照以下步骤安装所有 NextUI 组件
安装包
要在终端中安装 NextUI,请运行以下命令之一
npm install @nextui-org/react framer-motion
提升依赖项设置
注意:此步骤仅适用于使用 pnpm 安装的用户。如果您使用其他包管理器安装 NextUI,则可以跳过此步骤。
如果您使用 pnpm,则需要将以下行添加到 .npmrc
文件中,以将我们的包提升到根 node_modules
。
public-hoist-pattern[]=*@nextui-org/*
修改 .npmrc
文件后,您需要再次运行 pnpm install
以确保正确安装依赖项。
Tailwind CSS 设置
NextUI 构建在 Tailwind CSS 之上,因此您需要先安装 Tailwind CSS。您可以按照官方 安装指南 安装 Tailwind CSS。然后,您需要将以下代码添加到 tailwind.config.js
文件中
注意:如果您使用 pnpm 和单一仓库架构,请确保您指向 ROOT
node_modules
// tailwind.config.jsconst {nextui} = require("@nextui-org/react");/** @type {import('tailwindcss').Config} */module.exports = {content: [// ...// make sure it's pointing to the ROOT node_module"./node_modules/@nextui-org/theme/dist/**/*.{js,ts,jsx,tsx}",],theme: {extend: {},},darkMode: "class",plugins: [nextui()],};
提供商设置
在应用程序的根目录
中添加NextUIProvider
至关重要。
import * as React from "react";// 1. import `NextUIProvider` componentimport {NextUIProvider} from "@nextui-org/react";function App() {// 2. Wrap NextUIProvider at the root of your appreturn (<NextUIProvider><YourApplication /></NextUIProvider>);}
单独安装
NextUI 也作为单独的包提供。您可以单独安装每个包。如果您希望减小 CSS 捆绑包的大小,这将非常有用,因为它只包含您实际使用的组件的样式。
注意:由于 NextUI 中的 tree shaking 支持,JavaScript 捆绑包大小不会改变。
按照以下步骤单独安装每个包
安装核心包
虽然您可以单独安装每个包,但您需要首先安装核心包以确保所有组件正常工作。
在你的终端中运行以下命令之一以安装核心包
npm install @nextui-org/theme @nextui-org/system framer-motion
安装组件
现在,让我们安装你想使用的组件。例如,如果你想使用按钮组件,你需要在你的终端中运行以下命令之一
npm install @nextui-org/button
提升依赖项设置
注意:此步骤仅适用于使用 pnpm 安装的用户。如果您使用其他包管理器安装 NextUI,则可以跳过此步骤。
如果您使用 pnpm,则需要将以下行添加到 .npmrc
文件中,以将我们的包提升到根 node_modules
。
public-hoist-pattern[]=*@nextui-org/*
修改 .npmrc
文件后,您需要再次运行 pnpm install
以确保正确安装依赖项。
Tailwind CSS 设置
当你使用单独的包时,TailwindCSS 的设置会稍有变化。你只需要将你正在使用的组件的样式添加到你的 tailwind.config.js
文件中。例如,对于按钮组件,你需要将以下代码添加到你的 tailwind.config.js
文件中
// tailwind.config.jsconst {nextui} = require("@nextui-org/theme");/** @type {import('tailwindcss').Config} */module.exports = {content: [// single component styles"./node_modules/@nextui-org/theme/dist/components/button.js",// or you can use a glob pattern (multiple component styles)'./node_modules/@nextui-org/theme/dist/components/(button|snippet|code|input).js'],theme: {extend: {},},darkMode: "class",plugins: [nextui()],};
提供商设置
在应用程序的根目录
中添加NextUIProvider
至关重要。
import * as React from "react";// 1. import `NextUIProvider` componentimport {NextUIProvider} from "@nextui-org/system";function App() {// 2. Wrap NextUIProvider at the root of your appreturn (<NextUIProvider><YourApplication /></NextUIProvider>);}
使用组件
现在,您可以在应用程序中使用已安装的组件
import * as React from "react";import {Button} from "@nextui-org/button";function App() {return (<Button>Press me</Button>);}
版本 2 仅与 React 18 或更高版本兼容。如果您使用的是 React 17 或更早版本,请使用 NextUI 版本 1。
框架指南
NextUI UI 与您首选的框架兼容。我们为以下框架编制了全面的分步教程