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

摘要:
跟随编辑器查看我使用的元素ui版本是V1.4.13。如上图所示,如果使用el按钮,可以通过设置type属性的值来添加颜色,并添加图标来设置图标属性的值。

这篇文章主要介绍了element-ui 的el-button组件中添加自定义颜色和图标的实现方法,目前的解决方案是:添加一个自定义全局指令,同时在element-ui源码中,加入对应的组件。需要的朋友跟随小编一起看看吧

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

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

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

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

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

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

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

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

 2、局部组件vRender的写法:

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

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

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

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

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

然后再在指令中循环添加

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

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

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

前提

elementui图标库图标较少

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

实现

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

<el-button   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组件中添加自定义颜色和图标的实现方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇【js】了解前端缓存,收获不止于此!七日杀修改大背包(单机版A15.2 B6)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

winform语音提示

1 public static class voiceHelper 2 { 3 public static System.Speech.Synthesis.SpeechSynthesizer synth; 4 /// <summary> 5 /// 语音提示 6...

mybatis返回HashMap结果类型与映射

Xhtml代码  <!-- 返回HashMap结果 类型-->       <!-- 如果想返回JavaBean,只需将resultType设置为JavaBean的别名或全限定名 -->       <!-- TypeAliasRegistry类初始化时注册了一些常用的别名,如果忘记了别名可以在这里面查看 -->  ...

scrapy爬虫系列之四--爬取列表和详情

功能点:如何爬取列表页,并根据列表页获取详情页信息? 爬取网站:东莞阳光政务网 完整代码:https://files.cnblogs.com/files/bookwed/yangguang.zip 主要代码: yg.py importscrapy from yangguang.items importYangguangItem classYgSpide...

python 文件操作

读取文件:r,只读不能写,文件不存在报错 #打开文件 file_object=open('log.txt',mode="r", encoding='utf-8')#读取:mode为r,只读不能写,文件不存在,报错 # 读取内容, content=file_object.read() print(content) #关闭文件 file_object....

qt嵌入式html和本地c++通信方式

前沿:我们在做qt项目的时候,通常会把某个html网页直接显示到应用程序中。比如绘图。直接把html形式的图标嵌入到应用程序中 但是我们需要把数据从后台c++端传到html端,实现显示。qt实现了相关的方法 程序运行截图 一。先看客户端js代码     <script type="text/javascript" src="http://t.zou...

以『赘婿』为实战案例,手把手教会你用python爬取『爱奇艺』视频弹幕

1前言 最近爱奇艺独播热剧『赘婿』特别火,号主我也在一直追,借助手中的技术,想爬取弹幕分析该剧的具体情况以及网友的评论! 由于为了让小白彻底学会使用python爬取爱奇艺弹幕的技术,因此本文详细介绍如何进行爬取,下文再进行分析数据! 2分析数据包 1.查找数据包 在浏览器里面按F12 找到这类url https://cmts.iqiyi.com/bul...