gulp-svg-sprites输出[Object object]而不是icons

时间:2016-11-09 10:13:22

标签: javascript html css svg gulp

我想使用gulp-svg-spritessymbols一起构建svg sprite。但我得错了输出:图标没有生成([{1}}中的[对象]),路径错误,似乎有些编译器无法正常工作。

gulpfile.js

<symbol>

生成的var gulp = require('gulp'), svgSprite = require('gulp-svg-sprites'); gulp.task('sprites', function () { return gulp.src('icons/*.svg') .pipe(svgSprite({mode: "symbols"})) .pipe(gulp.dest("images")); }); 包含

symbols.html

生成的<h4>Files Generated:</h4> <ol> <li><a href="{config.svg.symbols}">{config.svg.symbols}</a></li> </ol> 包含

symbols.svg

这是最终输出,没有任何变化。 也许缺少一些东西。我已经安装了 node-gyp 虽然我不需要它(我努力解决问题)。 它可以是什么?缺什么?也许有其他一些方法来生成符号svg sprite?

1 个答案:

答案 0 :(得分:1)

我也有同样的问题,无法找到解决方案。 但是找到了其他gulp插件gulp-svg-symbols并且效果很好。

example

我的配置:

var $ = require('gulp-load-plugins')();
var gulp = require('gulp');

module.exports = function(options) {
    return function() {
        return gulp.src(options.src)
            .pipe($.svgSymbols({
                id: "icon-%f"
            }))
            .pipe($.rename(function(file) {
                file.basename = 'sprite';
                return file;
            }))
            .pipe($.if( /[.]svg$/, gulp.dest(options.dest)));
    };
};