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

简介: 教程来源 https://www.aescc.cn/ Arco Design 支持灵活的主题定制与国际化:可通过 Less 变量(编译时)或 CSS 自定义属性(运行时)定制主题,配合 ConfigProvider 动态切换;提供 Design Lab 可视化配置平台;内置多语言支持及 RTL 布局适配,助力品牌统一与全球化开发。

四、主题定制

4.1 主题定制原理
Arco Design 提供了两种主题定制方式:通过 Less 变量覆盖和通过 CSS 变量定制。两种方式各有优劣:
image.png
4.2 通过 Less 变量定制(编译时)
步骤一:安装 less

npm install less less-loader -D

步骤二:创建自定义主题文件

// custom-theme.less
@import '~@arco-design/web-react/es/style/index.less';

// 覆盖主题变量
@primary-color: #4c6ef5;          // 品牌主色
@success-color: #10b981;           // 成功色
@warning-color: #f59e0b;           // 警告色
@error-color: #ef4444;             // 错误色

@border-radius-none: 0;
@border-radius-small: 2px;
@border-radius-medium: 4px;
@border-radius-large: 6px;
@border-radius-circle: 50%;

@font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

步骤三:配置 Webpack/Vite

// webpack.config.js
module.exports = {
  module: {
    rules: [
      {
        test: /\.less$/,
        use: [
          'style-loader',
          'css-loader',
          {
            loader: 'less-loader',
            options: {
              lessOptions: {
                javascriptEnabled: true,
                modifyVars: {
                  'primary-color': '#4c6ef5',
                },
              },
            },
          },
        ],
      },
    ],
  },
};

4.3 通过 CSS 变量定制(运行时)
Arco Design 使用 CSS 自定义属性来定义主题变量,支持运行时动态切换主题。

/* 在全局样式文件中覆盖 CSS 变量 */
:root {
  --primary-color: #4c6ef5;
  --success-color: #10b981;
  --warning-color: #f59e0b;
  --error-color: #ef4444;
  --border-radius-small: 4px;
  --border-radius-medium: 8px;
}

[data-theme='dark'] {
  --primary-color: #6d28d9;
  --bg-color: #1a1a2e;
  --text-color: #e0e0e0;
}

4.4 使用 ConfigProvider 动态切换主题

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

function ThemeSwitcher() {
  const [theme, setTheme] = useState('light');

  const toggleTheme = () => {
    const newTheme = theme === 'light' ? 'dark' : 'light';
    setTheme(newTheme);
    // 动态设置 CSS 变量
    if (newTheme === 'dark') {
      document.documentElement.style.setProperty('--primary-color', '#8b5cf6');
    } else {
      document.documentElement.style.setProperty('--primary-color', '#4c6ef5');
    }
  };

  return (
    <ConfigProvider theme={
  { theme }}>
      <Button onClick={toggleTheme}>切换主题</Button>
    </ConfigProvider>
  );
}

4.5 Design Lab 可视化主题定制
Arco Design 提供了 Design Lab 可视化主题配置平台,设计师和开发者可以协作完成品牌主题定制。通过 Design Lab,你可以:

可视化调整主题变量,实时预览效果

导出主题配置代码,直接集成到项目中

管理多个主题版本,支持 A/B 测试

一键生成 Figma 设计资源

五、国际化

5.1 ConfigProvider 国际化
Arco Design 通过 ConfigProvider 组件统一管理国际化配置,支持多种语言切换。

import { ConfigProvider, Button, DatePicker, Pagination } from '@arco-design/web-react';
import enUS from '@arco-design/web-react/es/locale/en-US';
import zhCN from '@arco-design/web-react/es/locale/zh-CN';
import { useState } from 'react';

function I18nDemo() {
  const [locale, setLocale] = useState(zhCN);

  const switchLanguage = () => {
    setLocale(locale === zhCN ? enUS : zhCN);
  };

  return (
    <ConfigProvider locale={locale}>
      <Button onClick={switchLanguage}>
        {locale === zhCN ? 'Switch to English' : '切换到中文'}
      </Button>
      <DatePicker />
      <Pagination total={100} />
    </ConfigProvider>
  );
}

Arco Design 内置了丰富的语言支持,包括简体中文、英文、日语、韩语、法语、德语、西班牙语等主流语言。你还可以通过自定义 locale 对象来扩展新的语言支持。
5.2 RTL 视图支持
Arco Design 支持 RTL(从右到左)布局,适配阿拉伯语、希伯来语等语言。

import { ConfigProvider } from '@arco-design/web-react';

function RTLDemo() {
  return (
    <ConfigProvider rtl>
      <div style={
  { direction: 'rtl' }}>
        {/* 组件将自动适配 RTL 布局 */}
        <Button type="primary">按钮</Button>
        <Input placeholder="输入框" />
      </div>
    </ConfigProvider>
  );
}

开启 rtl 属性后,所有组件的布局方向会自动适配从右到左的阅读习惯,包括按钮图标方向、输入框光标位置、下拉菜单弹出方向等。
来源:
https://aescc.cn/

相关文章
|
12天前
|
数据采集 缓存 运维
IP查询工具如何评估IP负载?云上资源分配的实战方法
我们曾因P99延迟骤升盲目扩容无效,最终靠IP分桶定位到某云厂商ASN段的爬虫流量。IP查询工具不测性能,而是为请求打标签(ASN/代理类型/风险分等),结合监控数据精准识别“谁拖垮了系统”。分四类桶、设三条件、按优先级调度(分流>限流>扩容>封禁),离线缓存+二次验证,避免误伤。
|
15天前
|
弹性计算 测试技术 数据库
阿里云服务器秒杀活动介绍:秒杀配置、价格、活动入口与秒杀策略
2026年阿里云服务器秒杀活动推出两款轻量应用服务器:2核2G配置38元1年,2核4G配置9.9元1个月、199元1年,每天10点和15点限量开抢。活动助力个人和中小企业优惠上云,服务器预装应用镜像,适合开发者、学生等快速搭建应用。秒杀规则严格,需提前准备。若秒杀失败或不符合条件,可考虑长效特惠方案,如99元/年的经济型e实例或199元/年的通用算力型u1实例。
|
2月前
|
JavaScript Linux API
零基础玩转OpenClaw部署及避坑指南:从阿里云到本地多系统搭建,附千问大模型API配置与免费模型接入方案
OpenClaw(原Clawdbot)作为2026年热门的开源AI执行网络,凭借其强大的任务执行与大模型集成能力,成为开发者与企业用户的首选AI工具之一。本文将详细介绍2026年阿里云轻量服务器部署及本地MacOS/Linux/Windows11部署OpenClaw的完整步骤,同时涵盖阿里云千问大模型API配置与免费大模型Coding Plan API配置方法,并针对部署过程中的常见问题提供解决方案,帮助用户快速完成OpenClaw的部署与使用。
555 4
|
2天前
2026年最新阿里云百炼Coding Plan活动调整通知:首购活动、Lite套餐停售及Pro套餐限量供应说明
2026年阿里云百炼Coding Plan活动调整:Lite套餐停售及续费,Pro套餐每日9:30限量抢购;首购与升级暂无优惠。同步推出TokenPlan团队版,新用户开通百炼平台:https://t.aliyun.com/U/fPVHqY 免费领7000万Tokens。详情以官网为准。
173 2
|
19天前
|
人工智能 安全 机器人
阿里云JVS Claw全面开放:无需邀请码云端”养龙虾“,不需要安装体验OpenClaw,纯免费!
阿里云JVS Claw(“AI龙虾”)是基于OpenClaw打造的开箱即用AI智能体,JVS官网:https://t.aliyun.com/U/IJbaxg 支持云端/本地双模部署,无需邀请码、纯免费体验。它能真正动手执行任务——处理文档、分析数据、抓取网页、运行代码,并通过技能库(ClawHub)持续进化。三端互通,5分钟上手,让普通人也能拥有专属数字员工。
394 6
|
23天前
|
人工智能 架构师
Qoder Together 郑州站来啦!解锁企业级 AI Coding 落地玩法
4月22日14:00-17:00,郑州阿里中心举办AI Coding实战沙龙!聚焦Qoder产品解析、企业级方案及UU跑腿落地实践,架构师现场带练。名额有限,速报名→ https://huodongxing.com/event/4855877137411
131 4
|
1月前
|
机器学习/深度学习 搜索推荐 数据处理
PAI-Rec推荐开发平台:企业级智能推荐解决方案,驱动业务全域增长
PAI-Rec是阿里云一站式推荐系统平台,集成多路召回、多目标精排(如DBMTL)、GPU加速推理与灵活迭代能力,已助力电商、直播、音视频等多行业提升点击率、转化率与ROI,实现高效、低成本、可自主演进的智能推荐。
274 16
|
1月前
|
人工智能 Linux iOS开发
openclaw安装教程从0到1部署,三大系统全覆盖操作流程3.0版本
覆盖 Windows、macOS、Linux 三大系统,国内海外网络环境全适配,每一步都踩过坑、反复验证过,照着做绝对能跑通!手把手带你搞定网关搭建、安全配置,再无缝对接主流大模型,一站式解决私有化部署所有难题。
|
29天前
|
人工智能 自然语言处理 安全
OpenClaw 汉化懒人安装包(包含新安装包)|Windows 一键直装,无需手动配置任何文件
专门打造的懒人版 OpenClaw 中文版安装程序,Windows 系统一键安装,自动适配环境、自动汉化,全程鼠标点选,不用写一行代码。
OpenClaw 汉化懒人安装包(包含新安装包)|Windows 一键直装,无需手动配置任何文件
|
12天前
|
人工智能 运维 Linux
阿里云轻量服务器部署Hermes Agent全流程实操与百炼Token Plan 配置配置详解
在智能化工具持续迭代的当下,自主运行、具备记忆能力、支持多任务处理的AI智能体,逐渐成为个人与小型团队提升工作效率的核心载体。Hermes Agent作为开源轻量化智能体框架,具备持久化记忆存储、自定义技能拓展、多模型兼容、后台常驻运行等核心特性,能够独立完成指令执行、文件处理、信息整理、自动化调度等多项任务。依托云端服务器的稳定运行能力,搭配大模型订阅服务完成接口对接,可以实现全天候不间断服务,摆脱本地设备性能限制与离线运行短板。
207 7

热门文章

最新文章