2015-10-12 42 views

risposta

6

Il official gulp-ruby-sass documentation dice che dovrebbe essere fatto in questo modo:

var gulp = require('gulp'); 
var sass = require('gulp-ruby-sass');  

gulp.task('sass', function() { 
    return sass('source/file.scss') 
    .on('error', sass.logError) 
    .pipe(gulp.dest('result')); 
}); 
+0

ho già ottenuto che la soluzione, ma ancora ho paura perché il codice 'gulp.src ('sass/app.scss')' doesn lavorare poiché la maggior parte delle esercitazioni funziona con questo codice :( esempio: https: //www.youtube.com/watch? v = cg7lwX0u-U0, https://www.youtube.com/watch?v=NkomAUQxYr8 – Muhammed

+0

La funzione sass funziona in un modo diverso, si aspetta un argomento 'pattern' del percorso, ecco perché ottieni l'errore Perché il codice di esempio non funziona per te? Che cosa vuoi ottenere non funziona? per te con l'esempio ufficiale? – user1120808

17

La sintassi gulp-ruby-Sass è stata modificata:

instead of:       it is now: 

gulp.task('styles', function(){  gulp.task('styles', function(){ 
    gulp.src('sass/app.scss')   return 
     .pipe(sass())      sass('sass/app.scss') 
     .pipe(gulp.dest('css/')    .pipe(gulp.dest('css/') 
    ;         ; 
});         }); 

Si prega di controllare fuori e segnare il vostro problema risolto.

+2

ok, cosa succede se voglio eseguire sass dopo qualche altro plugin? quindi non è il primo metodo utilizzato nella pipeline –

2

Install libsass because it runs much faster than ruby sass , it works with node

npm install gulp-sass --save-dev` 

Install gulp load plugins because it does so much and loads plugins from your json and you dont need to declare in your gulpfile (carefull how many you use because if you load too many it hinders performance)

npm install --save-dev gulp-load-plugins 

var gulp = require('gulp'), 
     $ = require('gulp-load-plugins')({ 
     pattern: ['gulp-*', 'gulp.*'], 
     replaceString: /\bgulp[\-.]/, 
     lazy: true, 
     camelize: true 
     }); 

gulp.task('libsass', function() { 
     gulp.src('sass/app.scss') 
      .pipe($.sass({errLogToConsole: true})) 
      .pipe($.autoprefixer({ 
      browsers: ['last 2 versions'], 
      cascade: false 
      })) 
      .pipe($.sourcemaps.write('app/css/map')) 
      .pipe(gulp.dest('app/css')) 
    });