2014-05-06 27 views
4

我試圖將我的SASS文件的行號存入我編譯的CSS文件中。根據docs我必須設置debug_info爲真,但根本不工作。gulp.js:在gulp-sass上使用'debug_info'

// Styles 
gulp.task('styles', function() { 
    return gulp.src('src/sass/**/*.scss') 
    .pipe(sass({errLogToConsole: true})) 
    .pipe(sass({ style: 'expanded', debug_info: true })) 
    .pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4')) 
    .pipe(gulp.dest('build/dev/css')) 
    .pipe(minifyCSS()) 
    .pipe(gulp.dest('build/production/css')); 
}); 

任何人都知道這是否可能使用gulp-sass插件?

回答

10

有可能gulp-sass,我要說的是什麼SteveLacy指出的是您要尋找的解決方案。

在你的代碼,它是這樣的:

// Styles 
gulp.task('styles', function() { 
return gulp.src('src/sass/**/*.scss') 
    .pipe(sass({errLogToConsole: true})) 
    .pipe(sass({ 
     style: 'expanded', 
     sourceComments: 'normal' 
    })) 
    .pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4')) 
    .pipe(gulp.dest('build/dev/css')) 
    //.pipe(minifyCSS()) 
    .pipe(gulp.dest('build/production/css')); 
}); 

注意gulp-minify-css將剝離由gulp-sass添加任何意見,所以我評論了。

+1

更新到此解決方案:您現在應該使用sourceComments:true – jasongonzales

+0

請注意,'sourceComments:true'使我的'.min.css'文件大小是原始文件的兩倍,而不是一半大小。將數值改回「正常」會顯着減小尺寸 –

2

可以使用gulp-ruby-sass。我在我的項目中使用與調試的相關信息和行號:

var sass = require('gulp-ruby-sass'); 
... 
// Styles for Development (Watch-Process) 
gulp.task('styles-dev', function() { 
    return gulp.src('src/styles/main.scss') 
    .pipe(sass({ 
     debugInfo : true, 
     lineNumbers : true, 
     loadPath : 'src/styles', 
     style  : 'expanded' 
    })) 
    .pipe(gulp.dest('dist/styles')); 
}); 
... 

僑 拉爾夫

+0

ruby​​ sass支持sass調試。 gulp-sass,它使用節點sass(見下文)不。切換到紅寶石sass可能適合您的需求,但它不是這個問題的正確答案。 (另外,我堅持使用node-sass,因爲它更快) – Lane

+0

感謝'lineNumbers'。試過在沒有運氣的情況下使用'sourceComments'。 沒有關於該插件頁面的信息。 – extempl