博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vue+ element 动态换肤
阅读量:5994 次
发布时间:2019-06-20

本文共 2237 字,大约阅读时间需要 7 分钟。

转至 

一、搭建好项目的环境。二、根据ElementUI官网的自定义主题(http://element.eleme.io/#/zh-CN/component/custom-theme)来安装【主题生成工具】。首先安装「主题生成工具」,可以全局安装或者安装在当前项目下,推荐安装在项目里,方便别人 clone 项目时能直接安装依赖并启动,这里以全局安装做演示。npm i element-theme -g安装白垩主题,可以从 npm 安装或者从 GitHub 拉取最新代码。# 从 npmnpm i element-theme-chalk -D# 从 GitHubnpm i https://github.com/ElementUI/theme-chalk -D¶初始化变量文件主题生成工具安装成功后,如果全局安装可以在命令行里通过 et 调用工具,如果安装在当前目录下,需要通过 node_modules/.bin/et 访问到命令。执行 -i 初始化变量文件。默认输出到 element-variables.scss,当然你可以传参数指定文件输出目录。et -i [可以自定义变量文件]> ✔ Generator variables file如果使用默认配置,执行后当前目录会有一个 element-variables.scss 文件。内部包含了主题所用到的所有变量,它们使用 SCSS 的格式定义。大致结构如下:$--color-primary: #409EFF !default;$--color-primary-light-1: mix($--color-white, $--color-primary, 10%) !default; /* 53a8ff */$--color-primary-light-2: mix($--color-white, $--color-primary, 20%) !default; /* 66b1ff */$--color-primary-light-3: mix($--color-white, $--color-primary, 30%) !default; /* 79bbff */$--color-primary-light-4: mix($--color-white, $--color-primary, 40%) !default; /* 8cc5ff */$--color-primary-light-5: mix($--color-white, $--color-primary, 50%) !default; /* a0cfff */$--color-primary-light-6: mix($--color-white, $--color-primary, 60%) !default; /* b3d8ff */$--color-primary-light-7: mix($--color-white, $--color-primary, 70%) !default; /* c6e2ff */$--color-primary-light-8: mix($--color-white, $--color-primary, 80%) !default; /* d9ecff */$--color-primary-light-9: mix($--color-white, $--color-primary, 90%) !default; /* ecf5ff */$--color-success: #67c23a !default;$--color-warning: #e6a23c !default;$--color-danger: #f56c6c !default;$--color-info: #909399 !default;...¶修改变量直接编辑 element-variables.scss 文件,例如修改主题色为红色。$--color-primary: red;¶编译主题保存文件后,到命令行里执行 et 编译主题,如果你想启用 watch 模式,实时编译主题,增加 -w 参数;如果你在初始化时指定了自定义变量文件,则需要增加 -c 参数,并带上你的变量文件名et> ✔ build theme font> ✔ build element theme¶引入自定义主题默认情况下编译的主题目录是放在 ./theme 下,你可以通过 -o 参数指定打包目录。像引入默认主题一样,在代码里直接引用 theme/index.css 文件即可。import '../theme/index.css'import ElementUI from 'element-ui'import Vue from 'vue'Vue.use(ElementUI)三、在 element-variables.scss 文件里修改 $–color-primary:#409EFF,即你想要的主题颜色。然后,执行主题编译命令生成主题(et),根目录会生成一个theme文件夹。

 

 四、封装动态换肤色ThemePicker.vue组件。

 

五、直接在组件中引用

六、换肤效果测试。

 

转载于:https://www.cnblogs.com/provedl/p/11046112.html

你可能感兴趣的文章
gcc 编译错误之Clock skew detected
查看>>
大话程序猿眼里的高并发【转】
查看>>
Linux系统中“动态库”和“静态库”那点事儿【转】
查看>>
2 hive的使用 + hive的常用语法
查看>>
windows安装nginx部署
查看>>
面向对象(五)super
查看>>
Leetcode: Data Stream as Disjoint Intervals && Summary of TreeMap
查看>>
探索ASP.NET MVC5系列之~~~6.Session篇(进程外Session)
查看>>
C# HtmlElement的GetAttribute("class") return ""
查看>>
mysql ip转换函数
查看>>
Maven设置snapshot无法在远程仓库下载的问题解决
查看>>
vue 数据传递的方法
查看>>
linux watch 命令
查看>>
Spring Boot静态资源处理
查看>>
手把手带你打造一个 Android 热修复框架
查看>>
android Gui系统之SurfaceFlinger(1)---SurfaceFlinger概论【转】
查看>>
基于WebService的自升级框架WebSAUF: 一个ClickOnce替代方案[转]
查看>>
user rails3.2 host xml-rpc server as a blog proxy
查看>>
DevExpress 中 用 LookUpEdit 控件 代替 ComboBoxEdit 控件来绑定 DataTable
查看>>
PlaceHolder控件]
查看>>