element-ui 的el-button组件中添加自定义颜色和图标的实现方法


Posted in Javascript onOctober 26, 2018

我使用的element-ui的版本是V1.4.13。

element-ui 的el-button组件中添加自定义颜色和图标的实现方法

如上图所示,如果使用el-button,加颜色是可以通过设置type属性的值,加图标就设置icon属性的值。

现在产品给了一个需求,就是自定义的很多种类别,不同的类别的按钮显示不同的颜色和图标。如下图所示:

element-ui 的el-button组件中添加自定义颜色和图标的实现方法

为了方便开发,目前的解决方案是:添加一个自定义全局指令,同时在element-ui源码中,加入对应的组件。开发人员在开发时只要在type中添加不同的类的值,就能添加上颜色和图标。

1、在element-ui的button源码中加了自定义指令otherRender,以及一个局部组件vRender

element-ui 的el-button组件中添加自定义颜色和图标的实现方法

2、局部组件vRender的写法:

element-ui 的el-button组件中添加自定义颜色和图标的实现方法

这里不懂的可以看下 https://cn.vuejs.org/v2/guide/render-function.html中的函数式组件

element-ui 的el-button组件中添加自定义颜色和图标的实现方法

3、自定义指令otherRender,写在项目公共的js中。这里我先将所有的类对应的颜色类和图标定义好。css样式是根据需求自定义的

element-ui 的el-button组件中添加自定义颜色和图标的实现方法

然后再在指令中循环添加

element-ui 的el-button组件中添加自定义颜色和图标的实现方法

在使用el-button时只要添加对应的type值就能使用,对应的颜色和图标就会显示了

下面看下自定义elementui中的图标

前提

elementui图标库图标较少

当你想用elementui的控件而不想用它的图标时,就可以使用自定义的方式来实现

实现

el-icon-my-export为我自定义的图标命名

<el-button class="default" icon="el-icon-my-export">导出</el-button>
//使用图片来替换
//before属性中的content文本是用来占位的,必须有
//可以设置字体大小来确定大小
//使用visibility: hidden;来隐藏文字
.el-icon-my-export{
  background: url(/officeHouse/resources/images/export.png) center no-repeat;
  background-size: cover;
}
.el-icon-my-export:before{
  content: "替";
  font-size: 16px;
  visibility: hidden;
}

//如果直接使用字体图片
//直接在before属性设置对应的content就行
.el-icon-my-export{
  font-size: 16px;
}
.el-icon-my-export:before{
  content: "\e611";
}

content里面使用汉字大小会比较正常,但是汉字有时候会出现乱码,可以使用Unicode编码

//编码后的的替为 \u66ff
//书写到css里面的时候需要去掉u
.el-icon-my-export:before{
  content: "\66ff";
  font-size: 16px;
  visibility: hidden;
}

其他控件的图标替换大多如此,当然具体问题具体分析,我也不确定会不会有不同的情况

总结

以上所述是小编给大家介绍的element-ui 的el-button组件中添加自定义颜色和图标的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
解决FLASH需要点击激活的代码
Dec 20 Javascript
高亮显示web页表格行的javascript代码
Nov 19 Javascript
Jquery在指定DIV加载HTML示例代码
Feb 17 Javascript
jquery禁止输入数字以外的字符的示例(纯数字验证码)
Apr 10 Javascript
ActiveX控件与Javascript之间的交互示例
Jun 04 Javascript
小议JavaScript中Generator和Iterator的使用
Jul 29 Javascript
jQuery使用经验小技巧(推荐)
May 31 Javascript
浅析JavaScript的几种Math函数,random(),ceil(),round(),floor()
Dec 22 Javascript
获取当前月(季度/年)的最后一天(set相关操作及应用)
Dec 27 Javascript
bootstrap table动态加载数据示例代码
Mar 25 Javascript
vue随机验证码组件的封装实现
Feb 19 Javascript
vue 解决data中定义图片相对路径页面不显示的问题
Aug 13 Javascript
angularjs通过过滤器返回超链接的方法
Oct 26 #Javascript
js使用formData实现批量上传
Mar 27 #Javascript
详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)
Oct 26 #Javascript
js自定义input文件上传样式
Oct 26 #Javascript
解决axios会发送两次请求,有个OPTIONS请求的问题
Oct 25 #Javascript
在Vue中使用axios请求拦截的实现方法
Oct 25 #Javascript
webpack4+react多页面架构的实现
Oct 25 #Javascript
You might like
vBulletin Forum 2.3.xx SQL Injection
2006/10/09 PHP
php getsiteurl()函数
2009/09/05 PHP
Ajax+PHP 边学边练 之二 实例
2009/11/24 PHP
用php解析html的实现代码
2011/08/08 PHP
淘宝ip地址查询类分享(利用淘宝ip库)
2014/01/07 PHP
easyui的tabs update正确用法分享
2014/03/21 PHP
php使用cookie实现记住用户名和密码实现代码
2015/04/27 PHP
修改发贴的编辑功能
2007/03/07 Javascript
JavaScript高级程序设计阅读笔记(十六) javascript检测浏览器和操作系统-detect.js
2012/08/14 Javascript
Node.js开发指南中的简单实例(mysql版)
2013/09/17 Javascript
jquerydom对象的事件隐藏显示和对象数组示例
2013/12/10 Javascript
node.js中的url.format方法使用说明
2014/12/10 Javascript
node.js中的http.request方法使用说明
2014/12/14 Javascript
javascript实现倒计时(精确到秒)
2015/06/26 Javascript
Node.js的Web模板引擎ejs的入门使用教程
2016/06/06 Javascript
原生JS查找元素的方法(推荐)
2016/11/22 Javascript
JS 实现 ajax 异步浏览器兼容问题
2017/01/21 Javascript
微信小程序page的生命周期和音频播放及监听实例详解
2017/04/07 Javascript
Javascript实现倒计时时差效果
2017/05/18 Javascript
详解NODEJS基于FFMPEG视频推流测试
2017/11/17 NodeJs
vue.js的双向数据绑定Object.defineProperty方法的神奇之处
2019/01/18 Javascript
解决Vue的文本编辑器 vue-quill-editor 小图标样式排布错乱问题
2020/08/03 Javascript
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:EE凭借法力虚空拿下4杀
2017/03/30 DOTA
python中的__slots__使用示例
2015/02/26 Python
Python实现控制台中的进度条功能代码
2017/12/22 Python
Python3 利用face_recognition实现人脸识别的方法
2020/03/13 Python
python列表删除和多重循环退出原理详解
2020/03/26 Python
python时间序列数据转为timestamp格式的方法
2020/08/03 Python
python 解决selenium 中的 .clear()方法失效问题
2020/09/01 Python
HTML5 Canvas 实现K线图的示例代码
2019/12/23 HTML / CSS
IRO美国官网:法国服装品牌
2018/03/06 全球购物
物业管理毕业生的自我评价
2014/02/17 职场文书
大学生会计职业生涯规划范文
2014/02/28 职场文书
个人政风行风自查自纠报告
2014/10/21 职场文书
敬业奉献模范事迹材料(2016精选版)
2016/02/26 职场文书
解决golang post文件时Content-Type出现的问题
2021/05/02 Golang