快速开始
代码生成器
前端项目指南
后端项目指南
插件使用教程
部署指南
更详部署指南
相关站点
自定义图标【菜单以及直接使用】
说明
在2023/12/10后下载的版本即可使用,之前的版本请自行升级
使用
我们以文件 web/assets/icons/customer-gva.svg
为例,
只需要把svg文件放入前端 web/assets/icons/ 目录下即可自动注册,然后在菜单配置中选择使用或者直接使用标签<customer-gva></customer-gva>
即可使用
svg文件不可以有宽和高,如果需要自动适配颜色,需要在svg文件中添加fill="currentColor"
属性,如果使用特定颜色svg自行填充fill即可
实现代码 /web/core/global.js ```javascript
const createIconComponent = (svgContent) => ({ name: 'SvgIcon', props: { iconClass: { type: String, default: '', }, className: { type: String, default: '', }, }, render() { const { className } = this return h('span', { class: className, ariaHidden: true, innerHTML: svgContent, }) }, })
const registerIcons = async(app) => { const iconModules = import.meta.glob('@/assets/icons/*/.svg') for (const path in iconModules) { const response = await fetch(path) const svgContent = await response.text() const iconName = path.split('/').pop().replace(/.svg$/, '') const iconComponent = createIconComponent(svgContent) config.logs.push({ 'key': iconName, 'label': iconName, }) app.component(iconName, iconComponent) } }
```
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论