我今天跑npm update
了,随之而来的是一场灾难。我在安装软件包时遇到了麻烦,但在一切似乎都在正确的位置之后,我开始了gulp
将我的 SCSS 代码编译成 CSS 的任务。
此代码重现了我的问题:
var gulp = require('gulp'),
sourcemaps = require('gulp-sourcemaps'),
sass = require('gulp-sass');
gulp.task('sass', function() {
gulp.src('www/sass/*.scss')
.pipe(sourcemaps.init())
.pipe(sass())
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest('www/css'));
});
gulp.task('default', ['sass'], function(){
gulp.watch('www/sass/*.scss', {debounceDelay: 2000}, ['sass']);
});
通过 运行这段代码后gulp default
,结果如下:
www/sass/example.scss
#test {
color: red;
}
www/css/example.css
#test {
color: red; }
/*# sourceMappingURL=example.css.map */
www/css/example.css.map
{"version":3,"sources":["../../stdin"],"names":[],"mappings":"AAAA,KAAK,CAAC;EACL,KAAK,EAAE,GAAI,GACX","file":"example.css","sourceRoot":"/sass"}
sources
生成的源映射中的数组包含"../../stdin/"
而不是"example.scss"
!但为什么?