好的,所以我主要使用Laravel&Vue js构建一个Web应用程序。我尝试使用https://github.com/JetBrains/svg-sprite-loader#installation,但导出的svg显示为空白。
在这种情况下,我开始怀疑这是否真的值得,我不确定。
所以我的问题是,到底有什么区别?
假设我们不能使用图标字体,因为我们想要彩色的svg。
-
是否甚至值得尝试使用一个软件包将svgs合并到一个精灵中,然后使用它,或者它与http / 2并没有真正的区别?
-
考虑文件大小和数据使用情况,是否值得尝试使用sprite而不是多个外部svg文件来最小化此方面?
-
对svg进行内联也是一种选择,但这会大大增加dom的大小。
所以我不禁要问……有没有人尝试过所有这些技术,并且找出了最佳,性能最高的技术,以及它们的真正区别是什么?
最后,如果有人给我一些关于为什么我的svg精灵显示空白的信息,那将是巨大的好处:P
我已经在webpack.mix中配置了上述软件包,如下所示:
const mix = require('laravel-mix');
const SpriteLoaderPlugin = require('svg-sprite-loader/plugin');
mix.js('resources/js/app.js','public/js')
.sass('resources/sass/app.scss','public/css')
.webpackConfig({
module: {
rules: [
{
test: /resources\/images\/.*\.svg$/,loader: 'svg-sprite-loader',exclude: /node_modules/,options: {
extract: true,spriteFilename: 'icons-sprite.svg',publicPath: 'images/sprites/',}
}
]
},plugins: [
new SpriteLoaderPlugin({ plainSprite: true}) // Sprites Plugin.
],})
.version()