mirror of
https://github.com/kuaifan/dootask.git
synced 2026-11-07 10:20:33 +00:00
- 引入 ionicons 8 新版图标,新增全局 IonIcon 组件(按需引入 SVG 内联渲染,不走 CDN) - 桌面端设置菜单保持不变 - 同步 ai-kb 设置入口与个人设置路径
32 lines
828 B
Vue
32 lines
828 B
Vue
<script>
|
||
/**
|
||
* Ionicons(新版)SVG 图标
|
||
*
|
||
* 用法:
|
||
* import {lockClosedOutline} from "ionicons/icons";
|
||
* <IonIcon :icon="lockClosedOutline"/>
|
||
*
|
||
* 按需引入 ionicons/icons 导出的 data URI,内联渲染为 SVG(不使用 <ion-icon> 组件,避免运行时从 CDN 加载)
|
||
* 尺寸跟随 font-size,颜色跟随 color
|
||
*/
|
||
export default {
|
||
name: 'IonIcon',
|
||
functional: true,
|
||
props: {
|
||
icon: {
|
||
type: String,
|
||
required: true
|
||
},
|
||
},
|
||
render(h, {props, data}) {
|
||
const {icon} = props
|
||
return h('i', Object.assign({}, data, {
|
||
staticClass: ['ion-icon', data.staticClass].filter(Boolean).join(' '),
|
||
domProps: {
|
||
innerHTML: icon.slice(icon.indexOf(',') + 1)
|
||
},
|
||
}))
|
||
}
|
||
}
|
||
</script>
|