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 相关文章推荐
S2SH整合JQuery+Ajax实现登录验证功能实现代码
Jan 30 Javascript
js实现倒计时(距离结束还有)示例代码
Jul 24 Javascript
使用jQuery获得内容以及内容的属性
Feb 26 Javascript
浅析angularJS中的ui-router和ng-grid模块
May 20 Javascript
JavaScript的ExtJS框架中数面板TreePanel的使用实例解析
May 21 Javascript
将html页面保存成图片,图片写入pdf的实现方法(推荐)
Sep 17 Javascript
vue实现添加标签demo示例代码
Jan 21 Javascript
bootstrap的工具提示实例代码
May 17 Javascript
vue router仿天猫底部导航栏功能
Oct 18 Javascript
微信小程序slider组件使用详解
Jan 31 Javascript
vue离开当前页面触发的函数代码
Sep 01 Javascript
vue 二维码长按保存和复制内容操作
Sep 22 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
让PHP以ROOT权限执行系统命令的方法
2011/02/10 PHP
php+mysql结合Ajax实现点赞功能完整实例
2015/01/30 PHP
PHP 实现 WebSocket 协议原理与应用详解
2020/04/22 PHP
jquery事件机制扩展插件 jquery鼠标右键事件。
2011/12/26 Javascript
开发 Internet Explorer 右键功能表(ContextMenu)
2013/07/03 Javascript
javascript实现仿腾讯游戏选择
2015/05/14 Javascript
Js数组排序函数sort()介绍
2015/06/08 Javascript
分享一些常用的jQuery动画事件和动画函数
2015/11/27 Javascript
微信小程序 wx.uploadFile无法上传解决办法
2016/12/14 Javascript
JS实现弹出下载对话框及常见文件类型的下载
2017/07/13 Javascript
简单通过settimeout看javascript的运行机制
2019/05/10 Javascript
jquery css实现流程进度条
2020/03/26 jQuery
Layui弹框中数据表格中可双击选择一条数据的实现
2020/05/06 Javascript
webpack5 联邦模块介绍详解
2020/07/08 Javascript
python调用机器喇叭发出蜂鸣声(Beep)的方法
2015/03/23 Python
使用Python3中的gettext模块翻译Python源码以支持多语言
2015/03/31 Python
Python聚类算法之基本K均值实例详解
2015/11/20 Python
Python在Console下显示文本进度条的方法
2016/02/14 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/26 Python
tensorflow 重置/清除计算图的实现
2020/01/19 Python
Python计算指定日期是今年的第几天(三种方法)
2020/03/26 Python
怎么快速自学python
2020/06/22 Python
Python3爬虫里关于代理的设置总结
2020/07/30 Python
Pycharm连接gitlab实现过程图解
2020/09/01 Python
Stuart Weitzman美国官网:美国奢华鞋履品牌
2016/08/18 全球购物
英国家电直销:Appliances Direct
2016/09/22 全球购物
Sephora丝芙兰澳洲官方网站:国际知名化妆品购物
2016/10/27 全球购物
学校七一活动方案
2014/01/19 职场文书
工商企业管理专业自荐信范文
2014/04/12 职场文书
运动会口号16字
2014/06/07 职场文书
2014年大学生党员自我评议
2014/09/22 职场文书
护士年终个人总结
2015/02/13 职场文书
有关骆驼祥子的读书笔记
2015/06/26 职场文书
2016大学生就业指导课心得体会
2016/01/15 职场文书
2016优秀员工先进事迹材料
2016/02/25 职场文书
React + Threejs + Swiper 实现全景图效果的完整代码
2021/06/28 Javascript