Vue的elementUI实现自定义主题
第一种办法:使用命令行主题工具
使用vue-cli安置完项目并引入element-ui(详细可参照 第二种办法中的介绍)
一、安置工具
1,安置主题工具
npm i element-theme -g
2,安置chalk主题,可以从 npm 安置或者从 GitHub 拉取最新代码
# 从 npm npm i element-theme-chalk -D # 从 GitHub npm i https://github.com/ElementUI/theme-chalk -D
二、初始化变量文件
et -i [可以自定义变量文件,默许为element-variables.scss] > ? Generator variables file
这时根名目下会发生element-variables.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: #eb9e05 !default; $--color-danger: #fa5555 !default; $--color-info: #878d99 !default; ...
三、修改动量
直接编纂 element-variables.scss 文件,例如修改主题色为本人所需要的色彩(如: 紫色(purple))
$--color-primary: purple;
四、编译主题
修改完变量后,要编译主题(假如编译后,再次修改了变量,需要从新编译)
et > ? build theme font > ? build element theme
五、引入自定义主题
最后一步,将编译好的主题文件引入项目(编译的文件默许在根名目下的theme文件下,也可以通过 -o 参数指定打包名目),在入口文件main.js中引入
import '../theme/index.css' import ElementUI from 'element-ui' import Vue from 'vue' Vue.use(ElementUI)
在项目中写些样式,看下主题色可否改动:(主题色变为紫色)
<p> <el-button>默许按钮</el-button> <el-button type="primary">主要按钮</el-button> <el-button type="success">成功按钮</el-button> <el-button type="info">信息按钮</el-button> <el-button type="warning">警告按钮</el-button> <el-button type="danger">危险按钮</el-button> </p>
第二种办法: 直接修改element样式变量
在项目中直接修改element的样式变量,(前提是你的文档也是使用scss编写)
一、第一用vue-cli安置一个新项目:
1,安置vue:
npm i -g vue
2,在项目名目下安置vue-cli:
npm i -g vue-cli
3,基于webpack创立新项目( vue-project)
vue init webpack vue-project
4,顺次输入以下命令行,运转vue-project
cd vue-project npm i npm run dev
二、安置elementUI乃至sass-loader,node-sass(项目中使用scss编写需要依靠的插件)
1,安置element-ui
npm i element-ui -S
2,安置sass-loader,node-sass
npm i sass-loader node-sass -D
在这里说一下,不需要配置webpack.base.conf.js文件,vue-loader会按照不一样类型文件来配置响应loader来打包我们的样式文件(感乐趣的可看下vue-loader的中心代码)
三、改动element样式变量
1.在src下创立element-variables.scss文件(名字可以自定义),写入如下代码:
/* 改动主题色变量 */ $--color-primary: teal; /* 改动 icon 字体途径变量,必需 */ $--font-path: '../node_modules/element-ui/lib/theme-chalk/fonts'; @import "../node_modules/element-ui/packages/theme-chalk/src/index";
2.在入口文件main.js中引入上面的文件即可
import Vue from 'vue' import Element from 'element-ui' import './element-variables.scss' Vue.use(Element)
看下结果吧,在文件里引入些样式看看,如button
<p> <el-button>默许按钮</el-button> <el-button type="primary">主要按钮</el-button> <el-button type="success">成功按钮</el-button> <el-button type="info">信息按钮</el-button> <el-button type="warning">警告按钮</el-button> <el-button type="danger">危险按钮</el-button> </p>
默许的色彩已经变为我们自定义的了,有其他的改动在element-variable.scss文件中改动变量即可
相关引荐:
elementui的默许样式修改办法分享
vue 2.0和elementUI实现面包屑导航栏办法代码
利用vue+elementUI部分引入组件的实现办法
以上就是Vue的elementUI实现自定义主题的具体内容,更多请关注百分百源码网其它相关文章!