微信小程序内容组件图标 icon使用及自定义

1,930 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

使用小程序内置图标

小程序内置了很多图标可以用 基础库 1.0.0 开始支持,低版本需做兼容处理

小程序内置图标使用示例

<icon type="success" size="14" color="red"/>
<icon type="info" size="14" color="red"/>
<icon type="cancel" size="12" color="red"/>
<icon type="waiting" size="32" color="red"/>

参数说明:

属性名类型默认值说明
typeString icon的类型,有效值:success, success_no_circle, info, warn, waiting, cancel, download, search, clear
sizeNumber23icon的大小,单位px
colorColor icon的颜色,同css的color

效果:

wx.showToast 中的icon

showToast的icon没有内置的icon那么多,类型也有稍许差异,需要注意

合法值说明
success显示成功图标,此时 title 文本最多显示 7 个汉字长度
error显示失败图标,此时 title 文本最多显示 7 个汉字长度
loading显示加载图标,此时 title 文本最多显示 7 个汉字长度
none不显示图标,此时 title 文本最多可显示两行,1.9.0及以上版本支持

 

使用自定义图标

内置图标不够用,又不想引入太多图片,可以试试自定义图标。 

小程序不能识别外部字体文件,但是转换成Base64就可以使用字体图标了。

以阿里巴巴的iconfont为例:

1.下载图标

先去官网下载喜欢的图标==》

下载解压后的文件夹==》

2.在线转换

打开transfonter.org/这个网站,将ttf格式的图标文件转换为base64的

完成之后,下载

3.添加css文件

下载好之后的css文件

复制到需要引用的wxss文件中(全局调用就放到app.wxss中);

复制原始css文件中的以下内容到上面的相同文件中:

4.调用

在需要的地方通过class标签调用:

效果如下:

 

需要注意⚠️:

关于第三步:

不一定全局引用复制;也可以单独注册成wxss文件,@import引入;

关于第四步:

引用方式很多,不限于以上示例方式~