我正在尝试使用webpack加载svg图像,如下所示:
const logo = require('./images/logo-white.svg')
请记住,这适用于我们所有其他图像,它们都不是svg。 无论我使用哪种加载器组合,当我加载它所放入的url或data-uri时,源代码如下所示:
module.exports = 'data-uri-that-is-the-actual-image'
答案 0 :(得分:1)
我找到了一个“解决方案”,真的是一个可怕的黑客,但考虑到我还没有找到任何其他方式,这里是:
function webpackSvgFixer(svg) {
// Remove data...base64, headers, leaving just the base64
svg = /data.*base64,(.*)/.exec(svg)[1];
// Convert base64 to string, then remove module.exports = and quotes
return /module\.exports = "(.*)"/.exec(atob(svg))[1];
};
const logo = webpackSvgFixer(require('./images/logo-white.svg'))