方式二:通过命令行主题工具
注意:按照以下步骤安装以后,执行初始化变量文件命令 et - i ,如果报了以下错误,可以通过 nvm 安装 node 版本为 11.15.0 后重新执行下列步骤来解决(未找到其他方法 😔 )。 报错信息如下:
1. 安装工具:
npm i element-theme -g
2. 安装白垩主题,可以从 npm 安装或者从 GitHub 拉取最新代码。
# 从 npm
npm i element-theme-chalk -D
# 从 GitHub
npm i https://github.com/ElementUI/theme-chalk -D
3. 初始化变量文件
主题生成工具安装成功后,如果全局安装可以在命令行里通过
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;
4. 修改变量
直接编辑 element-variables.scss
文件,例如修改主题色为红色。
$--color-primary: pink;
5. 编译主题
保存文件后,到命令行里执行 et
编译主题,如果你想启用 watch
模式,实时编译主题,增加 -w
参数;如果你在初始化时指定了自定义变量文件,则需要增加 -c
参数,并带上你的变量文件名。默认情况下编译的主题目录是放在 ./theme
下,你可以通过 -o
参数指定打包目录。
> ✔ build theme font
> ✔ build element theme
编译后会在根目录(在未指定编译的主题目录的情况下)下生成一个 theme文件夹,如下:
6. 使用自定义主题
和引入默认主题一样,在代码里直接引用「在线主题编辑器」或「命令行工具」生成的主题的
theme/index.css
文件即可。
// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
Vue.config.productionTip = false;
import ElementUI from 'element-ui';
// import '../theme2/index.css';
import '../theme/index.css'; //引入自定义主题
Vue.use(ElementUI);
/* eslint-disable no-new */
new Vue({
el: '#app',
router,
components: { App },
template: '<App/>'
文档: https://element.eleme.io/#/zh-CN/component/custom-themeelement-variables.scss
main.js
1.1 在自定义主题设置对应的颜色 并下载1.2 在项目目录下安装element-theme、element-theme-chalk1.2 下载下来的style 中的theme 放到项目的根目录下1.3 引入cssimport {1.4 测试< el - button type = "primary" > 默认按钮 < / el - button >
gulp-css-wrap工具的使用,可以看下文,笔者是照着模范的
https://blog.csdn.net/young_emily/article/details/78596219
基本能达到自己的目...
使用vue开发项目,用到elementUI,根据官网的写法,我们可以自定义主题来适应我们的项目要求,下面来介绍一下两种方法实现的具体步骤,(可以参考官方文档自定义主题官方文档),先说项目中没有使用scss编写,用主题工具的方法(使用的较多)
第一种方法:使用命令行主题工具
使用vue-cli安装完项目并引入element-ui(具体可参考第二种方法中的介绍)
一、安装工具
1,安装主题工具
npm i e...
每个公司的主题风格肯定是不一样的,比如现在的公司主题就是#00ab7a。在PC端TO-B的项目中少不了用element-ui,这个时候用element-theme-chalk直接本地编译修改了element全局的主题色。
1. 全局安装element-theme
npm install element-theme -g
2. 在vue中安装element-theme-chalk到dev生产环境
npm install element-theme-chalk -D
3. 初始化变量文件element-va