【问题标题】:gulp-sourcemaps with gulp-minify-css crashesgulp-sourcemaps 与 gulp-minify-css 崩溃
【发布时间】:2015-06-19 08:41:38
【问题描述】:

我正在用 gulp 任务编译 bootstrap-sass:

gulp.task('build-bootstrap-sass', function () {
  return gulp.src('styles/styles.sass')
    .pipe(sourcemaps.init())
    .pipe(sass({includePaths: ['node_modules/bootstrap-sass/assets/stylesheets/']}).on('error', sass.logError))
    .pipe(rename({basename:'bootstrap'}))
    .pipe(autoprefixer())
    .pipe(minifyCss())
    .pipe(sourcemaps.write('.'))
    .pipe(gulp.dest('dist/' ));
});

但这给了我以下错误:

[09:32:38] Using gulpfile d:\Code\Templates\App\gulpfile.js
[09:32:38] Starting 'build-bootstrap-sass'...
d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\text\escape-store.js:49
  var index = this.restoreMatcher.exec(placeholder)[1];
                                                   ^
TypeError: Cannot read property '1' of null
    at EscapeStore.restore (d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\text\escape-store.js:49:52)
    at UrlsProcessor.restore (d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\text\urls-processor.js:61:35)
    at Object.restore (d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\clean.js:195:28)
    at store (d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\stringifier\source-maps.js:12:21)
    at value (d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\stringifier\helpers.js:102:5)
    at property (d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\stringifier\helpers.js:91:5)
    at body (d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\stringifier\helpers.js:77:5)
    at all (d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\stringifier\helpers.js:140:9)
    at stringify (d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\stringifier\source-maps.js:74:3)
    at SelectorsOptimizer.process (d:\Code\Templates\App\node_modules\gulp-minify-css\node_modules\clean-css\lib\selectors\optimizer.js:20:10)

问题似乎出在我使用源映射时;如果我删除它,任务就会通过。但是对于我所有的 gulp 依赖项,我都在使用“最新”版本;并且 gulp-minify-css 更改日志表明它支持 sourcemaps

【问题讨论】:

  • 仅供参考 gulp-minify-css 一直是 deprecated 支持 gulp-clean-css。不确定它是否会解决源地图问题,你能解决这个问题吗?如果源地图对您来说仍然存在问题,我可以帮助您查看

标签: gulp gulp-sass bootstrap-sass gulp-sourcemaps gulp-clean-css


【解决方案1】:

gulp-sourcemaps 不支持gulp-minify-css。 你可以在这里找到所有支持的插件:https://github.com/floridoo/gulp-sourcemaps/wiki/Plugins-with-gulp-sourcemaps-support

您可以考虑使用 gulp-cssnano 来缩小 css 文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-12
    • 1970-01-01
    • 2015-03-21
    相关资源
    最近更新 更多