0.8.11 • Published 29 days ago

nc-vite-plugin-theme v0.8.11

Weekly downloads
-
License
MIT
Repository
github
Last release
29 days ago

nc-vite-plugin-theme

中文 | English

npm node 能诚团队优化的 vite 插件,用于动态修改项目界面的主题色

在 vite 处理 css 后,动态解析 css 文本内符合插件配置的颜色值的时候,从所有输出的 css 文件提取指定的颜色样式代码。并创建一个仅包含颜色样式的app-theme-style.css文件,动态插入到指定的位置(默认 body 底部),然后将所使用的自定义样式/组件库样式颜色替换为新的颜色,以达到动态更改项目主题色的目的

安装 (yarn or npm)

node version: >=12.0.0

vite version: >=2.0.0

yarn add nc-vite-plugin-theme -D

或者

npm i nc-vite-plugin-theme -D

使用

  • vite.config.ts 中配置,该方式可以按需引入需要的功能即可
import { defineConfig, Plugin } from 'vite';
import vue from '@vitejs/plugin-vue';

import { viteThemePlugin, mixLighten, mixDarken, tinycolor } from 'nc-vite-plugin-theme';

export default defineConfig({
  plugins: [
    vue(),
    viteThemePlugin({
      // 匹配需要修改的颜色
       colorVariables: [],
    });
  ],
});

参数说明

viteThemePlugin(Options)

Options

参数类型默认值说明
colorVariablesstring[]-如果 css 内包含在该数组内的颜色值,则会抽取出 css
wrapperCssSelectorstring-通用外层选择器。可以传入 'body'等用用选择器来提高层级
resolveSelector(selector:string)=>string-自定义选择器转换
customerExtractVariable(css:string)=>string-自定义 css 匹配颜色抽取逻辑
fileNamestringapp-theme-style.hash.css打包后输出的文件名
injectTobodyheadbody-prependbody生产环境加载的 css 注入到那个标签体

示例项目

Vben Admin

借鉴项目

License

MIT

0.8.11

29 days ago

0.8.10

29 days ago

0.8.9

1 month ago

0.8.8

1 month ago

0.8.7

1 month ago

0.8.6

1 month ago

0.8.4

1 month ago

0.8.3

1 month ago