在我的ReactJS项目中,我使用WebPack中的svg-transform-loader包,该包可以动态更新我的SVG的某些颜色。
import starOutlineIcon from 'images/star-outline.svg'
import greyStarOutlineIcon from 'images/star-outline.svg?stroke=#888888'
这很好用,我已经使用了一段时间了。
但是我已经开始使用TypeScript(v3.4.5)键入代码,并且必须对图像使用自定义类型:
declare module '*.svg' {
const content: string
export default content
}
我想对转换后的SVG做同样的事情,但是模块声明语法不支持多个通配符:
declare module '*.svg?stroke=*' {
const content: string
export default content
}
但是当我使用tsc
时,这种情况会中断:
error TS5061: Pattern '*.svg*' can have at most one '*' character.
关于如何声明这些模块的想法吗?