前端组件库 ——Arco Design React 知识点大全(一)

简介: 教程来源 https://www.bgnno.cn/ Arco Design是字节跳动出品的企业级设计系统,涵盖React/Vue组件库、设计语言、主题工具与图标平台。经4000+项目验证,具备全面性、高可定制性与TypeScript原生支持,助力高效构建统一、专业的中后台应用。

在企业级前端开发领域,UI 组件库的选择直接影响产品的开发效率、维护成本和用户体验。当项目需要快速搭建专业、统一的企业级应用时,一套成熟的设计体系往往能事半功倍。Arco Design 正是这样一款由字节跳动出品的、经过大规模业务验证的企业级设计系统。

Arco Design 的诞生源于字节跳动内部“开源协同”的实践。过去,字节跳动内部众多团队各自维护独立的设计体系和组件库,彼此割裂,重复造轮子的现象严重。为了解决这一问题,字节跳动内部建立了开源协同机制,将同类项目的不同技术团队聚合在一起,共建共享。Arco Design 在这样的背景下应运而生,来自字节跳动内部近 300 名设计师与开发者共同参与,经由 4000+ 项目的使用、验证和锤炼,覆盖了西瓜视频、火山引擎、今日头条、番茄小说等字节跳动核心产品线。

本文将系统全面地梳理 Arco Design React 的核心知识点,从设计理念到安装配置,从组件体系到主题定制,从国际化到性能优化,帮助读者建立完整的知识体系,能够熟练运用 Arco Design 构建高质量的企业级 React 应用。

一、Arco Design 概述

1.1 什么是 Arco Design
Arco Design 是字节跳动出品的一套完整的企业级设计系统,而不仅仅是一个 UI 组件库。它包含了设计语言、React 组件库、Vue 组件库、主题工具、设计资源、图标平台等完整生态。

与市面上其他组件库相比,Arco Design 的定位更加系统和全面:
image.png
Arco Design 的核心理念可以概括为”全面、可定制、类型友好“。它提供了超过 60 个精心打造的组件,开箱即用,覆盖中后台开发绝大部分场景;同时拥有丰富的 Design Token,支持两种主题定制方式,满足品牌化需求;所有组件使用 TypeScript 编写,提供完整的类型定义,IDE 支持完善。

根据字节跳动的官方介绍,“Arco Design 是一套企业级产品设计系统,由字节跳动 GIP UED 和架构前端团队联合打造,致力于为设计师和开发者提供高效、一致、愉悦的产品体验”。

1.2 技术栈与设计理念
Arco Design 采用现代化的前端技术栈构建,其核心组件库基于 React 开发,具有以下特点:
image.png
Arco Design 的设计系统分为几个层次:设计资源层(Figma、Sketch 等设计工具资源)、组件库层(React/Vue 组件实现)、生态工具层(Design Lab、Icon Box、Material Market)和应用层(Arco Pro 后台模板)。

1.3 Arco Design vs Ant Design vs Semi Design
这是开发者最常问的问题。三者代表了三种不同的设计哲学和背景:
image.png
选择建议:

选择 Arco Design:追求现代设计语言、需要完善的设计生态工具、项目需要 Vue 和 React 双版本支持

选择 Ant Design:需要最丰富的社区资源和文档、需要微信小程序和 React Native 支持

选择 Semi Design:追求极致的设计体验和主题定制能力,项目仅需 React 版本

需要注意的是,Semi Design 官方已明确不支持移动端,因为字节跳动内部移动端使用一套独立的移动端组件库(未开源)。而 Arco Design 提供 React 和 Vue 双版本支持,在技术栈选择上更加灵活。

二、安装与配置

2.1 环境准备
在使用 Arco Design 之前,请确保开发环境满足以下要求:

React 16.8+(支持 Hooks)

Node.js 14.x 或更高版本

TypeScript 4.0+(可选,推荐)

2.2 npm 安装(推荐)

# 使用 npm 安装
npm install @arco-design/web-react

# 使用 yarn 安装
yarn add @arco-design/web-react

# 使用 pnpm 安装(推荐)
pnpm add @arco-design/web-react

2.3 基础使用

import React from 'react';
import ReactDOM from 'react-dom';
import { Button } from '@arco-design/web-react';
// 引入组件库的样式(必须)
import '@arco-design/web-react/dist/css/arco.css';

function App() {
  return (
    <Button type='primary'>
      主要按钮
    </Button>
  );
}

ReactDOM.render(<App />, document.getElementById('app'));

⚠️ 重要提示:必须引入 arco.css 样式文件,否则组件样式不会生效。

2.4 按需引入(性能优化推荐)
Arco Design 支持按需引入,可以显著减小打包体积。推荐使用 babel-plugin-import 插件实现自动按需引入。

步骤 1:安装 babel-plugin-import

npm install babel-plugin-import -D

步骤 2:配置 babel.config.js

module.exports = {
  plugins: [
    ['import', {
      libraryName: '@arco-design/web-react',
      libraryDirectory: 'es',
      camel2DashComponentName: false,
      style: true,   // 自动加载样式
    }],
  ],
};

配置完成后,可以像下面这样使用组件,插件会自动处理样式引入:

import { Button } from '@arco-design/web-react';
// 样式会自动按需引入,无需手动导入 arco.css

2.5 在 Umi 项目中集成
如果你使用 Umi 框架,可以通过官方插件更简单地集成 Arco Design。

npm install @arco-design/web-react @umijs/plugins -S

配置 .umirc.ts:

export default {
  plugins: ['@umijs/plugins/dist/arco'],
  arco: {
    import: true,
    theme: 'light',
  },
};

2.6 TypeScript 支持
Arco Design 使用 TypeScript 编写,提供完整的类型定义。在 TypeScript 项目中使用时,可以获得完整的类型提示和校验:

import { Button, ButtonProps } from '@arco-design/web-react';

const CustomButton: React.FC<ButtonProps> = (props) => {
  // props 会有完整的类型提示
  return <Button {...props} />;
};

来源:
https://bgnno.cn/

相关文章
|
10天前
|
人工智能 JSON 供应链
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
LucianaiB分享零成本畅用JVS Claw教程(学生认证享7个月使用权),并开源GeoMind项目——将JVS改造为科研与产业地理情报可视化AI助手,支持飞书文档解析、地理编码与腾讯地图可视化,助力产业关系图谱构建。
23441 10
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
|
14天前
|
人工智能 缓存 BI
Claude Code + DeepSeek V4-Pro 真实评测:除了贵,没别的毛病
JeecgBoot AI专题研究 把 Claude Code 接入 DeepSeek V4Pro,跑完 Skills —— OA 审批、大屏、报表、部署 5 大实战场景后的真实体验 ![](https://oscimg.oschina.net/oscnet/up608d34aeb6bafc47f
4727 15
Claude Code + DeepSeek V4-Pro 真实评测:除了贵,没别的毛病
|
15天前
|
人工智能 JSON BI
DeepSeek V4 来了!超越 Claude Sonnet 4.5,赶紧对接 Claude Code 体验一把
JeecgBoot AI专题研究 把 Claude Code 接入 DeepSeek V4Pro 的真实体验与避坑记录 本文记录我将 Claude Code 对接 DeepSeek 最新模型(V4Pro)后的真实体验,测试了 Skills 自动化查询和积木报表 AI 建表两个场景——有惊喜,也踩
5675 13
|
1月前
|
人工智能 自然语言处理 安全
Claude Code 全攻略:命令大全 + 实战工作流(建议收藏)
本文介绍了Claude Code终端AI助手的使用指南,主要内容包括:1)常用命令如版本查看、项目启动和更新;2)三种工作模式切换及界面说明;3)核心功能指令速查表,包含初始化、压缩对话、清除历史等操作;4)详细解析了/init、/help、/clear、/compact、/memory等关键命令的使用场景和语法。文章通过丰富的界面截图和场景示例,帮助开发者快速掌握如何通过命令行和交互界面高效使用Claude Code进行项目开发,特别强调了CLAUDE.md文件作为项目知识库的核心作用。
24800 65
Claude Code 全攻略:命令大全 + 实战工作流(建议收藏)
|
3天前
|
前端开发 API 内存技术
对比claude code等编程cli工具与deepseek v4的适配情况
DeepSeek V4发布后,多家编程工具因未适配其强制要求的`reasoning_content`字段而报错。本文对比Claude Code、GitHub Copilot、Langcli、OpenCode及DeepSeek-TUI等主流工具的兼容性:Claude Code需按官方方式配置;Langcli表现最佳,开箱即用且无报错;Copilot与OpenCode暂未修复问题;DeepSeek-TUI尚处早期阶段。
745 2
对比claude code等编程cli工具与deepseek v4的适配情况