使用sourceComments吞并SASS任务:'map'产生'断言失败'

时间:2014-06-24 22:45:04

标签: javascript node.js sass gulp

我有一个网络应用程序我正在开发使用AngularJS,D3,Pixi.js和gulp作为构建系统。除了gulp-sass之外,这一切都很有效。这是相关的代码:

gulp.task('sass-dev', ['clean-dev'], function() {
  return gulp.src( cfg.appFiles.rootSass )
    .pipe( sass({ errLogToConsole: true }))
    .pipe( gulp.dest( cfg.buildDir+cfg.destDirs.css  ) )
    .pipe( livereload( server ) );
});

cfg只是一个具有预定义globs的变量。如果我做第三行

 .pipe( sass({ errLogToConsole: true, sourceComments: 'map' }))

通过添加源的映射(对调试很有用),我得到以下致命错误。

Assertion failed: (val->IsString()), function _NanGetExternalParts, file ../node_modules/nan/nan.h, line 1725.
Abort trap: 6

在我同事的计算机上,无论是否有映射,它都能完美运行。在我的情况下,每次映射源注释都会失败,并且在没有映射的情况下完美运行。这两台计算机都是运行最新版nodenpm),bowerOS X的iMac。

知道可能导致这种情况的原因是什么?问题gulpgulp-sass本身?

2 个答案:

答案 0 :(得分:4)

这些选项对我有用。

{ errLogToConsole: true, sourceComments: 'map', sourceMap: 'sass' }.

似乎总有一些奇怪的事情发生。

答案 1 :(得分:1)

在我的情况下,原因是一个空的scss文件。添加注释到文件或删除scss文件,解决了这个问题