安装

要求


自动安装

现在,使用 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 submit
Instructions:
↑/↓: Highlight option
←/→/[space]: Toggle selection
[a,b,c]/delete: Filter choices
enter/return: Complete answer
Filtered 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.js
const {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` component
import {NextUIProvider} from "@nextui-org/react";
function App() {
// 2. Wrap NextUIProvider at the root of your app
return (
<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.js
const {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` component
import {NextUIProvider} from "@nextui-org/system";
function App() {
// 2. Wrap NextUIProvider at the root of your app
return (
<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 与您首选的框架兼容。我们为以下框架编制了全面的分步教程