# lime-svg 矢量图标
一款基于UTS实现的原生矢量图标插件,支持uniapp和uniappx。该插件提供了两种渲染机制:原生插件和webview,可以根据需求选择合适的渲染方式。支持加载本地、网络、源文本和base64格式的SVG图标,并且可以自定义图标颜色。
## 文档链接
📚 组件详细文档请访问以下站点:
- [矢量图标文档 - 站点1](https://limex.qcoon.cn/components/svg.html)
- [矢量图标文档 - 站点2](https://limeui.netlify.app/components/svg.html)
- [矢量图标文档 - 站点3](https://limeui.familyzone.top/components/svg.html)
## 安装方法
1. 在uni-app插件市场中搜索并导入`lime-svg`
2. 由于普通授权版无法自定义基座,如需使用请购买源码版
3. 在页面中使用`l-svg`组件
### 渲染机制说明
- uniappx 安卓和iOS不支持动画
- uniappx 安卓和iOS在`HBX4.81`之前需要自定义基座,之后不需要。
## 代码演示
### 路径加载方式
通过设置`src`来加载svg图标,支持多种加载方式:
```html
```
### 颜色设置
通过设置`color`来改变svg图标颜色,注意:只支持纯色图标,多色图标无效。
```html
```
## 快速预览
导入插件后,可以直接使用以下标签查看演示效果:
```html
```
## 插件标签说明
- 默认 `l-svg` 为组件标签
- 默认 `lime-svg` 为演示标签
## Vue2使用说明
插件使用了`composition-api`,如果你希望在Vue2中使用,请按官方教程[vue-composition-api](https://uniapp.dcloud.net.cn/tutorial/vue-composition-api.html)配置。
关键代码是在main.js中的Vue2部分添加以下代码:
```js
// vue2
import Vue from 'vue'
import VueCompositionAPI from '@vue/composition-api'
Vue.use(VueCompositionAPI)
```
## API文档
### Props
| 属性名 | 说明 | 类型 | 默认值 |
| --- | --- | --- | --- |
| src | SVG图标的源,支持本地路径、网络URL、SVG源文本和Base64 | string | - |
| color | 图标颜色,仅对纯色图标有效 | string | - |
| web | 是否使用WebView渲染,支持动画效果 | boolean | `false` |
| width | 图标宽度 | string \| number | - |
| height | 图标高度 | string \| number | - |
### Events
| 事件名 | 说明 | 回调参数 |
| --- | --- | --- |
| click | 点击图标时触发 | event: Event |
| load | 图标加载完成时触发 | - |
| error | 图标加载失败时触发 | error: Error |
## 支持与赞赏
如果你觉得本插件解决了你的问题,可以考虑支持作者:
| 支付宝赞助 | 微信赞助 |
|------------|------------|
|  |  |