javascript - 从 html (webpack) 引用散列的 svg

标签 javascript svg webpack

我正在使用文件加载器将我的 svg spritesheet 哈希到 ./dist/svg/sprite.e3452.svg

{
    test: /\.(svg)$/,
    use: {
        loader: 'file-loader',
        options: {
            name: '[name].[hash:5].[ext]',
            outputPath: './svg/'
        }
    }
}

这可能是一个简单的问题,但是当名称随哈希值变化时,如何从 html 引用 svg 文件?

例如这里:

<svg class="close__icon">
    <use xlink:href="svg/sprite.svg#ios-trash-outline"></use>
</svg>

我使用 HtmlWebpackPlugin 来解决哈希 js 文件的类似问题,但找不到与我的 svgs 类似的任何内容。

谢谢

最佳答案

我不知道你是否解决了,但我也遇到了同样的问题,这里是解决方案。 Webpack 在 dom 中插入 sprite svg,您可以在 sprite id 后面使用下划线访问每个 id,在您的情况下:

<svg class="close__icon">
    <use xlink:href="#sprite_ios-trash-outline"></use>
</svg>

关于javascript - 从 html (webpack) 引用散列的 svg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58048751/

相关文章:

javascript - Angular 2 typescript 调用函数

javascript - 将 JsTree 订单存储回数据库

css - 可以使用 CSS 动画同时为 SVG 的两个属性设置动画吗?

svg - "C"在 SVG 路径中是什么意思?

webpack - 从虚拟目录提供 Webpack

javascript - Webpack 开发服务器不提供输出

javascript - 什么是用于 create-react-app 的 webpack.DefinePlugin 的良好替代品?

javascript - 如何在 JavaScript 中将数组中的随机值分配给另一个数组中的项目(将名称数组分配给工作日数组)?

javascript - 根据循环横幅中的行数应用样式以跨度

javascript - THREE.js 的 SVG 路径(坐标)