各位前端的大佬好, antdv 的官网文档这处的 SVG 类型是什么,该怎么传入?

2022-03-16 11:05:15 +08:00
 NjcyNzMzNDQ3

官网文档写着可以传入svg类型的 icon ,该如何传入呢?

我试了通过以下代码引入方式,都没有成功

const bxAnaalyse = () => import('@/assets/icons/bx-analyse.svg?inline')

import { bxAnaalyse } from '@/core/icons'

import { bxAnaalyse } from '@/assets/icons/bx-analyse.svg?inline'

引入后的 icon 变成了注释的 js函数

官网代码例子

[官网文档] https://pro.antdv.com/docs/router-and-nav

1786 次点击
所在节点    程序员
10 条回复
clf
2022-03-16 11:19:44 +08:00
.svg 文件的 url 吧,svg 文件格式是一种常见的矢量图形格式。
rioshikelong121
2022-03-16 11:22:11 +08:00
svgr 了解一下
NjcyNzMzNDQ3
2022-03-16 11:24:15 +08:00
@clf
试过了,antdv 不判断是否是 url 。我想改源码也没找到在哪。

![QQ 截图 20220316112226]( https://tva1.sinaimg.cn/large/007h7hGdgy1h0bk50ehauj31ci0dktlt.jpg)
billly
2022-03-16 11:33:06 +08:00
我就是这么用的啊
在 icons.js 中
import bxAnaalyse from '@/assets/icons/bx-analyse.svg?inline'
export { bxAnaalyse }

然后在 route 中
import { bxAnaalyse } from 'icons'
NjcyNzMzNDQ3
2022-03-16 11:39:47 +08:00
@billly

我这么写就变成注释的 js 了。。。用的是·用户登录的 token 获取用户有权限的菜单·,src\mock\services\user.js 这个文件里

https://tvax4.sinaimg.cn/large/007h7hGdgy1h0bjiebm4uj30jj0fj42t.jpg
NjcyNzMzNDQ3
2022-03-16 11:43:38 +08:00
ragnaroks
2022-03-16 11:53:32 +08:00
如果我没记错的话,这里应该是 require('/path/to/file')
ragnaroks
2022-03-16 11:56:19 +08:00
看了你的第二张图,应该也不是 cjs 和 esm 的问题了,那我也没遇到过你这种例外了
billly
2022-03-16 13:07:36 +08:00
@NjcyNzMzNDQ3 icon 字段不是字符串吧,不要加引号,直接 icon: bxAnaalyse,
billly
2022-03-16 13:08:31 +08:00
@NjcyNzMzNDQ3 哦 忽略上面 看错了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/840698

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX