• 周六. 4 月 25th, 2026

物嫩软件资讯网

软件资讯来物嫩

动态 Ant Design 主题插件使用教程

admin@wunen

5 月 14, 2025

动态 Ant Design 主题插件使用教程




dynamic-antd-theme


🌈 A simple plugin to dynamic change ant-design theme whether less or css.




1. 项目介绍


dynamic-antd-theme

是一个简单的插件,用于动态更改 Ant Design 的主题,无论是使用 Less 还是 CSS。该项目最初针对的是 React 项目,但其核心样式也适用于

ant-design-vue



ant-design-angular

。为了方便一键自动使用,项目中还打包了颜色选择器,但这也导致了项目体积较大。为了解决这个问题,开发者推出了一个新的版本

mini-dynamic-antd-theme

,去除了颜色选择器,更适合不需要颜色选择器的场景。

2. 项目快速启动

安装

首先,你需要安装

dynamic-antd-theme

插件:

npm install dynamic-antd-theme
# 或者使用 yarn
yarn add dynamic-antd-theme

使用

在你的应用中,通常在公共组件(如 Layout 或 Header)中使用

dynamic-antd-theme

import DynamicAntdTheme from 'dynamic-antd-theme';

function App() {
  return (
    <div className="theme-container">
      <span>Change antd theme: </span>
      <DynamicAntdTheme />
    </div>
  );
}

export default App;

自定义主题颜色

你可以通过

primaryColor

属性来设置初始主题颜色:

<DynamicAntdTheme primaryColor="#77dd66" />

自定义 CSS

你还可以通过

customCss

属性来定义自定义 CSS,影响任何元素:

const customCss = `
  ant-btn { font-family: fantasy; }
  custom-title { color: $primary-color; }
  custom-title:hover { color: $primary-hover-color; cursor: pointer; }
  #custom-id { color: $primary-shadow-color; }
`;

<DynamicAntdTheme customCss={customCss} />

3. 应用案例和最佳实践

基本使用

在应用的头部或侧边栏中添加主题切换器,用户可以动态更改应用的主题颜色:

<DynamicAntdTheme primaryColor="#77dd66" />

自定义存储名称

你可以通过

storageName

属性来设置存储在 localStorage 中的名称:

<DynamicAntdTheme storageName="my-custom-define-color" />

主题变化回调

你可以通过

themeChangeCallback

属性来定义主题颜色变化时的回调函数:

function themeChangeCallback(color) {
  document.getElementById('my-header-bar').style.backgroundColor = color;
}

<DynamicAntdTheme themeChangeCallback={themeChangeCallback} />

4. 典型生态项目

Ant Design


dynamic-antd-theme

是基于 Ant Design 的插件,Ant Design 是一个广泛使用的企业级 UI 设计语言和 React 组件库。

React

该项目主要用于 React 项目,React 是一个用于构建用户界面的 JavaScript 库。

Ant Design Vue

虽然该项目最初是为 React 设计的,但其核心样式也适用于

ant-design-vue

,这是一个基于 Vue 的 Ant Design 实现。

Ant Design Angular

同样,该项目也适用于

ant-design-angular

,这是一个基于 Angular 的 Ant Design 实现。

通过这些生态项目,

dynamic-antd-theme

可以在不同的前端框架中实现动态主题切换,为用户提供一致的体验。




dynamic-antd-theme


🌈 A simple plugin to dynamic change ant-design theme whether less or css.




发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注