Element Plus 的 Result 组件怎么自定义图标? 启航 提问于 2026-03-06 11:46:20 阅读 52 组件 我用 Element Plus 的 Result 组件展示操作结果,但想把默认的图标换成自己的 SVG 图标,试了 icon 属性但没生效,是不是用法不对? 官方文档说 icon 支持传入组件,但我直接传了个字符串路径好像不行…… const customIcon = 'https://example.com/icon.svg' // 模板里这样写 // <el-result :icon="customIcon" title="提交成功" /> 我来解答 赞 13 收藏 分享 生成中... 手机扫码查看 复制链接 生成海报 反馈 发表解答 您需要先 登录/注册 才能发表解答 2 条解答 UP主~雨欣 Lv1 Element Plus 的 Result 组件的 icon 属性确实支持自定义组件,但你直接传入一个字符串路径是不行的。要实现自定义 SVG 图标,得先把它封装成 Vue 组件。 简单来说,你需要创建一个 Vue 组件来渲染这个 SVG,然后把组件传给 Result 的 icon 属性。 这里有个示例: template: <el-result :icon="CustomIcon" title="提交成功"></el-result>, components: { CustomIcon: { render(h) { return h('img', { attrs: { src: 'https://example.com/icon.svg' }}) } } } 或者更简洁地使用函数式组件: components: { CustomIcon: { functional: true, render(h, ctx) { return h('img', { attrs: { src: 'https://example.com/icon.svg' }}) } } } 调试看看,应该就能正常显示你的自定义图标了。记得检查路径是否正确,网络请求有没有被拦截这些常见的问题。 回复 点赞 2026-03-29 19:10 ♫佳宜 Lv1 啊这个我也踩过坑...不能直接传svg路径,要传组件对象才行。我之前这样搞的: import { defineComponent } from 'vue' import CustomIcon from './custom-icon.vue' const customIcon = defineComponent(CustomIcon) // 模板 <el-result :icon="customIcon" title="提交成功" /> 记得把你的svg封装成vue组件再传进去。困死了... 回复 点赞 1 2026-03-06 12:01 加载更多 相关推荐 2 回答 54 浏览 Element Plus的Result组件图标不随状态变化怎么办? 我在用Element Plus的Result组件做操作反馈页面时,想根据不同的API返回状态动态切换图标和描述。按照文档写了状态绑定,但图标一直显示默认的成功图标,文字倒是能变: import { d... 南宫英杰 组件 2026-02-02 19:50:27 2 回答 105 浏览 Element Plus的Result组件如何自定义图标样式? 我在用Element Plus的Result组件做操作反馈页时,想把默认的成功图标换成其他图标,但直接设置icon属性没效果。试过用icon插槽手动放svg图标,虽然显示出来了但位置不对,总是偏移到右... 司徒景荣 组件 2026-01-26 19:02:25 2 回答 72 浏览 Element Plus时间线怎么自定义节点图标? 我用Element Plus的Timeline组件,想把默认的圆点换成自定义图标,但文档里没看懂怎么弄。试了在el-timeline-item里加icon属性,结果根本没生效,控制台也没报错,就是显示... 西门奥杰 组件 2026-02-26 17:19:19 1 回答 57 浏览 Element Plus日历组件怎么自定义日期单元格内容? 我在用Element Plus的Calendar组件,想在每个日期格子里显示自定义内容,比如当天的待办数量。官方文档说可以用scoped slot,但我试了date-cell好像没生效? 我这样写的:... 金壵(打工版) 组件 2026-03-17 16:23:20 1 回答 28 浏览 Element Plus日历组件怎么自定义日期样式? 我在用 Element Plus 的 Calendar 组件,想把某些特殊日期(比如节假日)标红,但文档里没找到怎么改单个日期的样式。 试过用 :date-class 属性返回类名,但好像没生效。是不... 端木诗诗 组件 2026-03-25 10:08:21 1 回答 59 浏览 Element Plus分页组件怎么自定义每页显示数量? 我在用Element Plus的Pagination组件,想让用户能自己选每页显示10、20、50条,但不知道咋配置。试过加page-sizes属性,但没生效,控制台也没报错,就是下拉框出不来。 我的... ♫恒宇 组件 2026-03-23 08:18:19 1 回答 37 浏览 Element Plus 的 Statistic 组件怎么自定义前缀和后缀样式? 我用 Element Plus 的 Statistic 组件展示数据,但默认的前缀(比如“¥”)和后缀(比如“元”)样式太小了,想改大一点,试了加 class 好像没生效? 我在文档里看到有 pref... 弯弯 组件 2026-02-26 23:17:21 2 回答 84 浏览 Element Plus图标不显示,颜色设置也没效果怎么办? 刚在项目里用Element Plus的ElIcon组件包裹SvgIcon,图标完全没显示出来。我按文档引入了ElIcon和对应图标组件,但页面就是一片空白。更奇怪的是,我给图标加了红色和2倍大小,样式... 名哲~ 组件 2026-01-31 12:16:25 1 回答 42 浏览 Element Plus分页组件怎么自定义每页显示条数? 我在用Element Plus的Pagination做表格分页,想让用户自己选每页显示多少条,比如10、20、50这样。但文档里没太看懂怎么配置,试了:page-sizes="[10, 20, 50]... Designer°自立 组件 2026-03-30 10:00:14 1 回答 38 浏览 Element Plus 的 Statistic 组件怎么设置小数位数? 我在用 Element Plus 的 Statistic 组件显示金额,但默认好像只显示整数,试了 formatter 也没生效。 比如我想显示 123.45 这样的两位小数,应该怎么做?官方文档里没... UX-香利 组件 2026-03-29 16:46:11
简单来说,你需要创建一个 Vue 组件来渲染这个 SVG,然后把组件传给 Result 的 icon 属性。
这里有个示例:
或者更简洁地使用函数式组件:
调试看看,应该就能正常显示你的自定义图标了。记得检查路径是否正确,网络请求有没有被拦截这些常见的问题。
记得把你的svg封装成vue组件再传进去。困死了...