字體圖標在網頁中很是常見了。爲了方便在小程序裏面重複使用,自定義了一個圖標組件,方便控制它的大小,顏色,自定義點擊事件。css
下面的代碼是icon文件夾下面的4個文件web
<view class="custom-class ss-font ss-icon-{{ name }}" style="{{ color ? 'color: ' + color : '' }}; {{ size ? 'font-size: ' + size : '' }}" bind:tap="onClick" > <view wx:if="{{ info !== null }}" class="ss-icon__info">{{ info }}</view> </view>
上面的 ss-font 和 ss-icon 是根據你在阿里巴巴圖標庫項目中自定義的,個人以下圖:json
index.js:小程序
Component({ options: { addGlobalClass: true }, externalClasses: ['custom-class'], properties: { info: null, name: String, size: String, color: String }, methods: { onClick() { this.triggerEvent('click'); } } });
上面若是理解有困難的能夠先看一下小程序組件介紹大概瞭解一些基本概念。xss
index.json:字體
{ "component": true }
index.wxss:this
/** 這裏放你的全部圖標的代碼 在阿里巴巴矢量庫,選擇 Unicode 模式,下載解壓後的iconfont.css裏面的代碼,下面有截圖可供參考 **/ .ss-icon__info { color: #fff; left: 100%; top: -.5em; font-size: 0.5em; padding: 0 0.3em; text-align: center; min-width: 1.2em; line-height: 1.2; position: absolute; border-radius: 0.6em; box-sizing: border-box; background-color: #f44; -webkit-transform: translateX(-50%); transform: translateX(-50%); font-family: PingFang SC, Helvetica Neue, Arial, sans-serif; }
參數 | 說明 | 類型 | 默認值 |
---|---|---|---|
name | 圖標名稱 | String |
- |
info | 圖標右上角文字提示 | String | Number |
- |
color | 圖標顏色 | String |
inherit |
size | 圖標大小,如 16px ,1em |
String |
inherit |
custom-style | 自定義樣式 | String |
- |
在index.json引入該組件:spa
"usingComponents": { "ss-icon": "/components/icon/index" }
設置name
屬性爲對應的圖標名稱便可。code
<ss-icon name="tel" />
這些圖標就是你本身定義的。像我下面的電話圖標:component
像什麼顏色,大小的配置能夠查看上面的API表格。這裏就不一一贅述了~