element-ui的el-button组件中添加⾃定义颜⾊和图标的实现⽅法我使⽤的element-ui的版本是V1.4.13。
如上图所⽰,如果使⽤el-button,加颜⾊是可以通过设置type属性的值,加图标就设置icon属性的值。
现在产品给了⼀个需求,就是⾃定义的很多种类别,不同的类别的按钮显⽰不同的颜⾊和图标。如下图所⽰:
为了⽅便开发,⽬前的解决⽅案是:添加⼀个⾃定义全局指令,同时在element-ui源码中,加⼊对应的组件。开发⼈员在开发时只要在type中添加不同的类的值,就能添加上颜⾊和图标。
1、在element-ui的button源码中加了⾃定义指令otherRender,以及⼀个局部组件vRender
2、局部组件vRender的写法:
3、⾃定义指令otherRender,写在项⽬公共的js中。这⾥我先将所有的类对应的颜⾊类和图标定义好。css样式是根据需求⾃定义的
然后再在指令中循环添加
在使⽤el-button时只要添加对应的type值就能使⽤,对应的颜⾊和图标就会显⽰了
下⾯看下⾃定义elementui中的图标
前提
icon图标库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组件中添加⾃定义颜⾊和图标的实现⽅法,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。在此也⾮常感谢⼤家对⽹站的⽀持!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论