gul svg sprite 1.2.19
我在配置对象上遇到了很多麻烦,这个配置对象被传递给gullowsvg-sprite来确定创建的文件的目的地。我已经阅读了关于输出目的地的文档部分,并阅读了关于此事的其他StackOverflow板。
这是Gulp任务:
gulp.task('build-icons',function(){
return gulp.src(assetsDev+'icons/*.svg')
.pipe(svgSprite({
mode: {defs:true, dest:'.'},
}))
.pipe(gulp.dest('icons'));
});
这就是我希望得到的:
icons
---sprite.defs.svg
相反,我得到的是:
icons
---defs
------svg
---------sprite.defs.svg
我试着更改mode.dest的值,或者在"mode"中添加一个"dest"设置作为同级设置,但没有什么区别。基本上,无论我写什么,文件总是保存在同一个位置。我觉得我的设定被忽略了。例如,如果我将sprite:"mysprite.svg"添加到模式设置中,该文件仍然保存为"sprite.defs.svg"在同一位置。
可能发生了什么?
解决方案发布在https://github.com/jkphl/svg-sprite/issues/155
基本上,我的错误是,我试图在defs
的对象同级中配置目的地,而不是在defs
对象本身中配置目标。为了我的目的,正确的配置对象应该从更改
mode: {defs:true, dest:'.'}
至:
mode: {defs:{dest:'.'}}
生成的文件现在按照我的意愿保存在icons
文件夹中。